Bash&(&符号)运算符
发布时间:2020-12-15 18:59:45 所属栏目:安全 来源:网络整理
导读:我试图在bash shell中并行运行3个命令: $(first command) (second command) (third command) wait 这样做的问题是,如果第一个命令失败,例如,退出代码为0(我猜是因为等待成功). 所需的行为是,如果其中一个命令失败,退出代码将为非零(理想情况下,其他正在运行
我试图在bash shell中并行运行3个命令:
$(first command) & (second command) & (third command) & wait 这样做的问题是,如果第一个命令失败,例如,退出代码为0(我猜是因为等待成功). 所需的行为是,如果其中一个命令失败,退出代码将为非零(理想情况下,其他正在运行的命令将被停止). 我怎么能实现这个目标? 请注意,我想并行运行命令!
我能想到的最好的是:
first & p1=$! second & p2=$! ... wait $p1 && wait $p2 && .. 要么 wait $p1 || ( kill $p2 $p3 && exit 1 ) ... 但是,这仍然会强制执行检查流程的命令,因此,如果第三个会立即失败,则在第一个和第二个完成之前您将不会注意到它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |