Если вы хотите завершить все фоновые процессы, если они не завершились до завершения выполнения lastProgram
, вам необходимо сохранить все pids:
python program1.py &
p1pid=$!
python program2.py &
p2pid=$!
other programs ... &
p3pid=$!
lastProgram
kill $p1pid $p2pid $p3pid
Если вы просто хотите дождаться завершения выполнения всех фоновых процессов перед выходом из скрипта, вы можете использовать команду wait
.
python program1.py &
python program2.py &
other programs ... &
lastProgram
wait
У меня было запущено 3 затянувшихся mate-display-properties
процесса. Убийство всех решило проблему.