我有两个后台进程 1 和 2
./1.sh &
PID_1 = $!
./2.sh &
PID_2 = $!
我正在尝试识别首先完成的进程,然后终止仍在继续的进程。这是我正在编写的脚本。
while ps -p | grep " $PID_1"
do
## process 1 is still running
### check for process 2
if ! ps -p | grep "$PID_2"
then
### process 2 is complete, so kill process 1
kill $PID_1
fi
done
kill $PID_2 ## process 2 is still running, so kill it
虽然这个脚本有效,但我正在寻找是否有其他更好的方法来做到这一点。