【发布时间】:2019-11-11 10:59:55
【问题描述】:
有一个命名管道作为源
shell1> mkfifo ~/myfifo
shell1> tee -a ~/myfifo
ciao
为什么下面的命令不打印任何消息?
shell2> cat ~/myfifo | perl -ane 'print "testa\n"' | cat
虽然删除了最后一个命令,但所有命令都按预期运行
shell2> cat ~/myfifo | perl -ane 'print "testa\n"'
testa
【问题讨论】:
-
我认为
cat正在等待EOF标记,因此在此之前它不会打印任何内容。尝试在shell1中按CTRL-D,然后输出到达shell2
标签: bash perl pipe named-pipes