例如,以单个程序的标准输出为例,使用 tee
获得它的两个副本。并将它们发送回 vimdiff
.
如果无需在磁盘上创建文件即可完成,则可以加分。
我知道如何将输入直接输入到需要两个输入的程序中,就像这样
vimdiff <(curl http://google.com) <(curl http://archives.com/last_night/google.com)
并带有用于制作两个输出流的三通
echo "abc" | tee >(sed 's/a/zzz/') >(sed 's/c/zzz/')
但我不知道如何将管道重新连接成菱形。
最佳答案
如果您可以使用fifo,这并不难:
test -e fifo || mkfifo fifo
echo abc | tee >(sed s/a/zzz/ > fifo) | sed s/c/zzz/ | diff - fifo
关于shell - 我可以获取一个输出流,用 tee 复制它,复制其中一个,然后将两者作为输入返回到 diff 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16867414/