我正在对一些相当大的文件进行流处理——我想知道是否有办法分割 stdout 以便将其传输到多个程序。我想要做的是这样的:
bzcat some_huge_file.bz2 | (wc > wordcount, char_stats > character_statistics)
我可以使用 perl 或 python 之类的语言来编写这种粘合剂,但似乎应该有办法做到这一点。
Google 带我tpipe
,但我找不到 tpipe 或源的任何副本(OS X 10.8 上没有本地任何内容)。
答案1
将发帖人的评论转换为正式答案:
答案是Tee和“流程替代”。
例子
bzcat some_huge_file.bz2 | tee >(wc > wordcount) | char_stats > character_statistics