shell – diff来自一个来源的两个管道
发布时间:2020-12-16 01:58:09 所属栏目:安全 来源:网络整理
导读:我找到了如何在SO上区分两个管道的答案,语法如下所示. diff (./a.out) (./a.out | sort -n) 但是,它会创建两个a.out进程,由ps验证.是否可以只有一个a.out,将输出广播到两个流,并在这两个流上进行差异? ./a.out | tee (cat) (sort -n) 我可以使用tee进行广播
我找到了如何在SO上区分两个管道的答案,语法如下所示.
diff <(./a.out) <(./a.out | sort -n) 但是,它会创建两个a.out进程,由ps验证.是否可以只有一个a.out,将输出广播到两个流,并在这两个流上进行差异? ./a.out | tee >(cat) >(sort -n) 我可以使用tee进行广播,但不知道如何使用diff. 有什么建议吗? 编辑:为什么我不想创建两个进程?原因是这是一个并发程序,因此输出是非确定性的.因此,我必须从一个进程使用相同的输出. 解决方法
不确定你有两个进程的反对意见,但也许你可以像这样使用fifo:
mkfifo fifo diff <(./a.out | tee fifo) <(sort < fifo) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |