Неинтерактивный скрипт по умолчанию отключает управление заданиями, но вы можете включить его с помощью set -m
или set -o monitor
. Вот пример сценария:
# turn on job control set -o monitor # start a background task ( sleep 10 && echo "slept 10 seconds" ) & # do something else sleep 5 echo "slept 5 seconds" # bring the background task into the foreground fg echo "done"
Вот его вывод при запуске с tracing ( bash -x script.sh
):
+ set -o monitor + sleep 5 + sleep 10 + echo 'slept 5 seconds' slept 5 seconds + fg ( sleep 10 && echo "slept 10 seconds" ) + echo 'slept 10 seconds' slept 10 seconds + echo done done