How to wait in bash for several subprocesses to finish and return exit code !=0 when any subprocess ends with code !=0?

后端 未结 30 2419
悲哀的现实
悲哀的现实 2020-11-22 03:50

How to wait in a bash script for several subprocesses spawned from that script to finish and return exit code !=0 when any of the subprocesses ends with code !=0 ?

S

30条回答
  •  终归单人心
    2020-11-22 04:12

    The following code will wait for completion of all calculations and return exit status 1 if any of doCalculations fails.

    #!/bin/bash
    for i in $(seq 0 9); do
       (doCalculations $i >&2 & wait %1; echo $?) &
    done | grep -qv 0 && exit 1
    

提交回复
热议问题