最佳答案
如何在bash脚本中等待从该脚本生成的几个子进程完成,然后在任何子进程以代码!=0
结束时返回退出代码!=0
?
简单脚本:
#!/bin/bash
for i in `seq 0 9`; do
doCalculations $i &
done
wait
上面的脚本将等待所有10个生成的子进程,但它将始终给出退出状态0
(参见help wait
)。我如何修改此脚本,以便它在任何子进程以代码!=0
结尾时发现生成的子进程的退出状态并返回退出代码1
?
有没有更好的解决方案,而不是收集子进程的PID,按顺序等待它们并求和退出状态?