Положить работу в БГ и запустить его?

Я знаю, что есть два или более способов запустить работу и поместить ее в фоновый режим.

Прямо сейчас я использовал ctrl-z, чтобы поместить передачу scp в фоновом режиме, потому что я заметил, что это займет некоторое время. Как запустить процесс в фоновом режиме, чтобы я мог писать другие команды, пока я ожидаю, пока это не будет сделано?

Примечание: я могу создать новый терминал, однако в этом случае я использую SSH на 2 разных серверах, так что это неудобно делать для каждой параллельной работы, которую я хочу в фоновом режиме.

4 ответа

Важно отметить, что в то время как некоторые процессы используют CTRL+Z для обозначения фона, поведение по умолчанию - STOP, которое не продолжает выполнение. Самый безопасный способ - запустить команду с символом & в конце, а затем запустить команду "disown", чтобы полностью перевести ее в фоновый режим. Однако вы не сможете снова выдвинуть это на передний план.

Если вы хотите простой способ следить за фоновыми задачами, подумайте о screen, В качестве основного урока введите screen scp myfile server:/mydestзатем нажмите CTRL+A D, чтобы "отсоединить" сеанс экрана. Вы можете вспомнить этот сеанс, набрав "screen -r", даже после выхода из машины!:)

screen имеет множество дополнительных функций, таких как несколько окон, активная панель задач и т. д. Вот руководство: ссылка

После того, как вы использовали ^Z, чтобы ОСТАНОВИТЬ что-то, введите "bg", чтобы запустить его в фоновом режиме. "fg" вернет его на передний план, если вы еще не вышли из системы.

К фоновым командам просто добавьте & после команды.

Я бы порекомендовал запускать такие программы, как scp на экране. Причина в том, что, поместив команду в фоновом режиме, она выведет вывод в ваш текущий терминал, и вы не сможете легко отключиться от сеанса SSH и повторно подключиться к нему в середине вашей работы.

Запустить экран. Вы получите новый терминал перед вами. Запустите ваш процесс. Теперь нажмите "Ctrl-A D", и вы должны получить строку с надписью

[Screen detached]

Вы можете подключиться к своему экрану, запустив:

# screen -r

Вы должны вернуть свой оригинальный терминал.

Другие вопросы по тегам