将程序生成的多个输出传递/管道化为bash中的其他后续程序

时间:2015-02-27 11:26:19

标签: linux bash shell

所以,基本上我关注的是:我希望grep找到的搜索结果被导入到下一个程序中,并且在下一个程序本身中再次使用“wc -l”完成的搜索结果的数量。

**| grep 'logprob' | wc -l | ***Next Code seeking logprob results & size***

P.S:grep命令也正在处理通过管道传输的输入文件。

1 个答案:

答案 0 :(得分:2)

... | grep logprob | { tee /dev/stderr | wc -l; } 2>&1 | ...

这将写入所有行写入后的总行数,因此不是特别有用(消费程序已经知道它读取的行数),但是你可以使用一个文件:

... | grep logprob | { tee /tmp/file | wc -l; cat /tmp/file; rm /tmp/file; } | ...

现在,行数将成为消费者可用的第一行。