管道猫与回声

时间:2017-04-09 23:11:03

标签: unix

我试图了解管道如何在Unix中运行。

假设我有一个带内容的文本文件名为a.txt。 如果我'cat a.txt | echo',则不会输出任何内容。 我希望它能回显a.txt的每一行。

另一方面,如果我做cat a.txt | grep 'd', 它将输出所有以' d'开头的行。

我的理解是cat将a.txt的内容输出到stdout,然后管道将该输出发送到grep' d'的输入,但grep将文件名作为输入,那么如何这样工作(如果grep被赋予非文件输入)?

1 个答案:

答案 0 :(得分:0)

如果您不想进入文本编辑器并想将一段数据保存在一个文件中,您可以使用

echo "somePassword" |猫 > .myPasswordFile

您已将 echo 的输出通过管道传输到 cat 并且 cat 已将其保存到文件中

ls |猫 > 目录列表.txt 将目录的输出发送到名为 dirlist.txt 的文件

这是一个示例,其中 echo 管道到 tee 命令以将某些内容附加到另一个文件的末尾

echo "服务器名称 127.0.0.1" |须藤 tee -a /etc/apache2/conf-available/server-name.conf