Possible Duplicate:
07000
有没有办法将输出从一个命令管道输入到另外两个命令的输入,同时运行它们?
这样的事情
$ echo 'test' |(cat) |(cat) test test
我想这样做的原因是我有一个程序从USB SDR设备接收FM收音信号,并将音频作为原始PCM数据输出(如.wav文件,但没有标题)。由于信号不是音乐,但POCSAG寻呼机数据,我需要管道解码程序来恢复寻呼机文本。不过我也想听听信号,所以我知道是否有任何数据进来。 (否则,我无法判断解码器是否损坏或者没有数据正在广播)。因此,为了将数据传输到寻呼机解码器,我还需要将相同的数据传送到播放命令。
目前,我只知道如何做到这一点 – 要么把它传输到解码器,要么无声地读取数据,要么管它播放并且听不到任何解码的文本。
如何将相同的数据管道传递给这两个命令,以便我可以阅读文本并听到音频?
我不能使用三通,因为它只将重复的数据写入文件,但我需要实时处理数据。
如果你使用三通和mkfifo,它应该是好的。
原文链接:https://www.f2er.com/bash/388173.htmlmkfifo pipe cat pipe | (command 1) & echo 'test' | tee pipe | (command 2)