启动多个代码,其中一个完成后停止

启动多个代码,其中一个完成后停止

所以我同时启动 4 个代码,并且我希望其中 3 个代码循环运行,直到第 4 个程序完成。

loopProgram1 & loopProgram2 & loopProgram3 & Program4

因此,我希望循环程序 1、2 和 3 执行,然后在程序 4 完成后,所有程序都退出。有什么方法可以做到这一点吗?

答案1

嗯,未经测试

children=()
loopProgram1 & children+=($!)
loopProgram2 & children+=($!) 
loopProgram3 & children+=($!)
Program4
kill "${children[@]}"

相关内容