Linux管道及;环
是否可以使用Linux管道创建循环?例如 cmd1 | cmd2 | cmd3 |“返回标准输入cmd1”Linux管道及;环,linux,pipe,piping,Linux,Pipe,Piping,是否可以使用Linux管道创建循环?例如 cmd1 | cmd2 | cmd3 |“返回标准输入cmd1” 换句话说,我希望cmd3的stdout连接回cmd1的stdin,您可以使用命名管道/FIFO: mkfifo cmd3-to-cmd1 cmd1 < cmd3-to-cmd1 | cmd2 | cmd3 >> cmd3-to-cmd1 mkfifo cmd3-to-cmd1 cmd1>cmd3-to-cmd1 请注意,此类循环可能会导致死锁。如果循环中的某个命令停止读
换句话说,我希望
cmd3的stdout
连接回cmd1的stdin
,您可以使用命名管道/FIFO:
mkfifo cmd3-to-cmd1
cmd1 < cmd3-to-cmd1 | cmd2 | cmd3 >> cmd3-to-cmd1
mkfifo cmd3-to-cmd1
cmd1>cmd3-to-cmd1
请注意,此类循环可能会导致死锁。如果循环中的某个命令停止读取太长时间而仍在写入,则最终所有管道都会变满并阻塞。即使是原来的slow命令也不能再写了。我将使用它作为“消息传递环”(替代基于0MQ的系统):我不希望出现这种死锁。