4

Когда я покидаю терминал с помощью Ctrl+D и есть фоновые задания, которые я получаю В первый раз останавливаются задания , но когда я снова нажимаю Ctrl+D , задания уничтожаются.

Могу ли я как-то отключить последнюю функцию, чтобы bash вообще не позволял мне покидать терминал, если остановлены задания?

2 ответа2

2

бежать :

nohup <command> &

nohup это "не зависание"

После просмотра обновленного вопроса вышеприведенное не сработает для вас. Вы можете попробовать запустить задание как обычно из командной строки, затем выполнить CTRL-Z (что приостановит выполнение программы), а затем выполнить команду bg %1 (% 1 - последнее созданное вами задание). Это позволит вашей программе работать в фоновом режиме. Теперь вам нужно отсоединить задание от сеанса, запустив disown -h . Это заставит оболочку отсоединить выполняемое задание от вашего сеанса и предотвратить отправку ему любого SIGHUP.

1

Я не нашел способа остановить bash от уничтожения заданий на втором exit но чтобы помочь мне, я добавил счетчик заданий в свое приглашение согласно https://stackoverflow.com/questions/12646917/show-job-count-in -bash-prompt-only-if-ненулевой, что может сделать меня менее вероятным пюре Ctrl-D

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .