做一个现场fifo - bash

时间:2016-08-14 13:10:15

标签: bash shell mkfifo

这是标准管道:foo | bar

但我希望在foobar之间延迟,foo输出会在没有完成的情况下继续。

我可以在foo > myfile之后{n =}开始bar < myfile。它会延迟n秒,但最大的问题是myfile变得庞大并且无需存储!如何从myfile读取并删除读取行。像FIFO这样的东西。

我尝试了mkfifo,但立即bar开始foo跳出来。

1 个答案:

答案 0 :(得分:1)

您可以在两个睡眠之间使用第三个进程,然后开始传递数据。

foo | { sleep 5; cat; } | bar