【发布时间】:2016-09-27 01:08:00
【问题描述】:
假设我有两个程序:program1 和 program2。 我想把program1的输出,放到program2的输入,然后把program2的输出,放到program1的输入等等。
执行此操作的 bash 脚本应该是什么样子? 我已经阅读了很多关于管道和输入/输出重定向的内容,但我仍然不确定。是否可以一个管道同时用于program2的输入和输出,而另一个管道用于program2?
我写过这样的东西:
PIPE=$(mktemp -u)
mkfifo $PIPE
exec 3<>$PIPE
rm $PIPE
cat <&3 >&3 &
但是当我想像这样运行 program1 和 program2 时:
cat <&3 | ./program1 >&3 &
cat <&3 | ./program2 >&3 &
它不起作用。任何线索我该怎么办? 提前谢谢你:)
【问题讨论】:
-
你在后台运行它...