Я пытаюсь выяснить, как запустить команду в фоновом режиме, а затем вывести ее на передний план. Я сыт по горло учебниками и ответами, где люди утверждают, что это просто, просто добавьте &
в конец команды, чтобы запустить ее в фоновом режиме. Работает только в одном окне терминала. Я хочу поместить команду в фоновом режиме в одном терминале и вернуть его на передний план после повторного открытия терминала
Пример:
$ grunt &
$ jobs
$ [1]+ Running grunt &
Конечно после закрытия терминала ни одна работа не найдена.
Следующий пример:
$ grunt & disown #the same behavior has: $ setsid grunt &
$ jobs
$ [nothing] #but ps shows that grunt is working
after close terminal, grunt doesn't work
Что я сделал не так? Может ли кто-нибудь объяснить мне, как запустить команду в фоновом режиме и вернуть ее на передний план.
Установить
screen
:Начало
screen
:Выполните ваши команды, что вам нужно.
Отсоедините
screen
от терминала (ваши команды будут еще работать):Нажмите CTRL+ a+d
Закройте терминал
Откройте другой терминал и подключите последний
screen
сеанс:Для получения дополнительной информации и дополнительных опций для
screen
поискаman screen
.источник
tmux
в качестве альтернативыscreen
.Вы пробовали:
byobu
илиtmux
какие терминальные мультиплексоры. Не совсем то, что вы ищете, но у него похожее поведение.Затем выполните команду, чтобы отсоединить:
Возобновить:
Смотрите https://help.ubuntu.com/community/Screen
источник