Содержание

Использование nohup в Linux для запуска скриптов в фоновом режиме

Все процессы, за исключением at, завершаются, когда вы выходите из системы (консоли). Если вы хотите, чтобы после вашего выхода из системы процесс в фоновом режиме продолжал выполняться, то вам необходимо использовать команду nohup.

Nohup (от "no hang up") - это утилита в Unix-подобных операционных системах, которая позволяет запускать команды или скрипты так, чтобы они продолжали работать, даже если сеанс терминала был завершен.

Как использовать Nohup?

Команда nohup имеет следующий синтаксис:

nohup command &

Предположим, вы хотите, чтобы команда grep осуществила поиск во всех файлах в вашем текущем каталоге строки "word" и перенаправила вывод в файл word.list, и затем, не ожидая завершения, вы хотите выйти из системы, то введите следующую строку:

nohup grep word * > word.list &

Вы можете завершить команду nohup с помощью команды kill, где PID - это идентификатор процесса, который можно найти с помощью команды ps:

kill PID

Как вывести на экран запущенный через nohup процесс:

tail -f nohup.out

Заключение

Nohup - это хороший инструмент для запуска процессов в фоновом режиме в Linux. Он позволяет вам запускать команды и скрипты так, чтобы они продолжали работать после того, как вы закрыли терминал. Однако, если вам нужно запустить несколько процессов или вы хотите иметь более полный контроль над ними, вы также можете обратить внимание на программу screen, которая предоставляет вам виртуальные консоли внутри вашего терминала, позволяя запускать и управлять несколькими сеансами одновременно. 5 вариантов Запуска скрипта на Python в Linux в фоновом режиме.