我试图了解管道如何在Unix中运行。
假设我有一个带内容的文本文件名为a.txt。
如果我'cat a.txt | echo'
,则不会输出任何内容。
我希望它能回显a.txt的每一行。
另一方面,如果我做cat a.txt | grep 'd'
,
它将输出所有以' d'开头的行。
我的理解是cat将a.txt的内容输出到stdout,然后管道将该输出发送到grep' d'的输入,但grep将文件名作为输入,那么如何这样工作(如果grep被赋予非文件输入)?
答案 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