【发布时间】:2012-01-14 16:14:07
【问题描述】:
我想将一些数据输出到管道,并让其他进程逐行对数据执行某些操作。这是一个玩具示例:
mkfifo pipe
cat pipe&
cat >pipe
现在我可以输入我想要的任何内容,按下回车后我会立即看到同一行。但是如果用echo代替第二个管道:
mkfifo pipe
cat pipe&
echo "some data" >pipe
管道在echo 和cat pipe& 完成后关闭,因此我无法通过管道传递更多数据。有没有办法避免关闭管道和接收数据的进程,以便我可以从 bash 脚本通过管道传递多行数据并在它们到达时处理它们?
【问题讨论】: