Вихід із терміналу, на якому працює "nohup ./my_script &" => "У вас запущені завдання". Гаразд, щоб вийти?


12

Скажімо, я запускаю наступне на віддаленій коробці з ідеєю запобігти вбиттю роботи, коли я відключаю термінал.

nohup ./my_script.sh &

Коли я намагаюся вийти зі свого терміналу, я отримав таке попередження:

zsh: you have running jobs

Я припускаю, що це нормально. Це просто говорить мені, що у мене робота / процес працює у фоновому режимі. Якщо я відключу термінал, робота / процес продовжуватиме працювати, правильно?


Я виявив, що nohup zsh зламаний і не робить те, що ти хочеш. Disown працює більшу частину часу. Хоча одного разу у мене виникла проблема, що намагалася використати відключену ffmpeg в zsh, я запустив bash shell і запустив nohup всередині цього.
Шрідхар Сарнобат

Відповіді:


19

Так, це добре. Дочірній процес отримає сигнал HUP, але процес не загине завдяки вашому nohup.

Якщо ви не хочете бачити це повідомлення, просто передайте ідентифікатор завдання disownтак:

disown %1

Або почніть роботу з &!(хитросмуговий фокус):

nohup ./my_script.sh &!
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.