如何使用echo命令打印出文本文件的内容?

时间:2014-03-13 11:53:00

标签: unix

我想弄清楚这个命令的用法是什么:

echo < a.txt

根据教科书,它应该重定向程序标准输入。现在我将a.txt重定向到echo,但不是打印文件的内容而是打印出一个空行! 感谢是否有人显示此行为。

5 个答案:

答案 0 :(得分:8)

echo不读stdin所以在这种情况下,重定向只是没有意义。

echo "Hello" | echo

要打印文件,只需使用以下命令

echo "$(<a.txt )"

答案 1 :(得分:0)

使用以下命令通过回显打印文件内容,

echo `cat file.txt`

在这里您还可以从所有回显功能中受益,我最喜欢删除尾随的换行符,(以获得与缓冲区(而不是文件)完全相同的哈希值

echo -n `cat file.txt` | sha256sum 

答案 2 :(得分:0)

在 Unix 中,我相信你所要做的就是,假设你有一个不重的文件: cat <filename>

不需要echo

答案 3 :(得分:0)

cat 命令将显示带有CR 或返回的文件:

$ cat names.txt 
Homer
Marge
Bart
Lisa
Maggie

您可以使用带有 cat 的 echo 命令作为命令替换。但是,它将用空格替换 CR 或 return (unix:\n):

$ echo $(cat names.txt)
Homer Marge Bart Lisa Maggie

如果您想通过管道进行进一步的数据处理,这可能是一个有趣的功能。例如。用 sed 命令替换空格。

答案 4 :(得分:-1)

你可以使用

type test.txt
pause