Запуск команд в фоне

 

&

Перевести команду в фоне можно с помощью знака & в конце:

# command &

Перевести в фон уже запущенный процесс:

# bg номер_задания
# %номер_задания &

Перевести из фона уже запущенный процесс:

# fg номер_задания

Посмотреть все текущие задания:

# jobs -l

+++++++++++++++++++++++++++++++-

 

nohup

nohup - UNIX-утилита, запускающая указанную команду с игнорированием сигналов потери связи (SIGHUP). Таким образом, команда будет продолжать выполняться в фоновом режиме и после того, как пользователь выйдет из системы.

 

Запуск скрипта без привязки к сессии:

# nohup /srv/tools/script.sh &

Вывод команды в файл:

# nohup grep word * > word.list &

Чтобы nohup.log никогда не создавался, перенаправляем stdout скрипта в /dev/null:

# nohup /srv/tools/netstat.sh >/dev/null &

+++++++++++++++++++++++++++++++-

 

Screen

Screen — свободная консольная утилита-мультиплексор, предоставляющая пользователю доступ к нескольким сессиям в рамках одной сессии. Это полезно для работы с несколькими программами из командной строки, а также для запуска программ на удаленном сервере.

 

Создать новое окно:

# screen

Список окон:

# screen -list

Создать новый экран:

# Ctrl+a -> c

Для переключения между экранами:

# Ctrl+a -> 0 переведет нас на 0 скрин.

# Ctrl+a -> “ выдаст меню для выбора скрина

# Ctrl+a ->n переключит на следующий скрин

# Ctrl+a ->p переключит на предыдущий скрин

Подключиться к потерянным экранам:

# screen -x

Найти номер потерянных экранов:

# screen -x n

Разделение экрана на части:

# Ctrl+a ->S

Переключение между экранами:

# Ctrl+a ->Tab

Закрыть часть окна:

# Ctrl+a ->Q Закрыть все регионы кроме текущего

# Ctrl+a ->X Закрыть текущий регион

Прокрутка в режиме screen:

# Ctrl-a [

Выход из screen, сессия остается работать в фоновом режиме:

# Ctrl+a -> d

Закрыть окно:

# Ctrl+a ->:quit

 

Материалы:

http://tt.erinome.net/2013/04/523

https://admins.su/kak-polzovatsya-utilitoj-screen-v-linux/

http://itman.in/ssh-screen/