我使用tee
如下:
some commands | tee -a >(command1 >> file) >(command2 >> file) >(command3 >> file)
如何将 command2 的执行延迟到 command1 结束,对于 command3 和 command2 也是如此?我试过wait
这样使用,但没有用:
some commands | tee -a >(command1 >> file) >(wait command2 >> file) >(wait command3 >> file)
看起来缺少一些逻辑以及语法错误。
tee -a
将输出传递到 STDOUT 并同时追加,无需使用>
为什么会有这么多输出重定向?可能是您应该使用
&&
或;
不知道你运行什么命令,但下面可能会给你一个想法。
some commands | tee -a file
无论退出代码如何,都会显示 STDOUT 并写入文件,因为;
接下来command1 >> file
会执行命令 2 和命令 3,依此类推。这里每个命令集除以
;
将按从左到右的顺序执行,并且每个命令输出都将显示在 STDOUT