Какие существуют методы, позволяющие сохранить команду, которая была запущена из оболочки, при запуске после выхода из оболочки?
Для помещения приложения в фон использовать &
:
command &
Если Вы хотите закрыть терминал и поддерживать приложение в рабочем состоянии, можно использовать несколько опций: screen
, dtach
и nohup
.
nohup command &
Экран полезен, поскольку можно перезапустить сессию, и dtach является забавой также.
Посмотрите на следующие ссылки для большей информации
Полезное (удар?) команда disown
. хорошая вещь об этом состоит в том, что это работает на уже рабочее задание (между прочим, Вы отрицаете задания, не процессы, таким образом, необходимо сделать a ctrl-Z, bg
перед выполнением отрицают на Вашем задании. Например, вообразите себя делающий следующее:
local % ssh some.where.com
remote % verylongscript.sh
Теперь Вы понимаете, что должны пойти, но не хотите, чтобы сценарий был уничтожен после выхода, таким образом, Вы
ctrl-Z
remote % bg
remote % disown
remote % exit
local %
Теперь, на remote
, Ваш сценарий все еще работает.
Я использую
nohup mycommand &
Например, чтобы вызвать виртуальный сервер VirtualBox, я набираю следующее в удаленной оболочке (которую затем закрываю):
nohup VBoxHeadless --startvm "myvm" --vrdp=off &
Используйте команду nohup следующим образом:
nohup gedit /home/user/file.txt &