Я знаю, что могу запустить приложение в фоновом режиме путем помещения амперсанда (&
) в конце команды. Например:
$ rtorrent &
[1] 4618
запускается rtorrent
в фоновом режиме.
Я хотел бы возвратиться к фону rtorrent
проверять, завершаются ли мои загрузки. Как я могу сделать это?
Вы можете просто запустить команду fg
в терминале.
Запустите fg
, чтобы вернуть задание на передний план, т. Е. Вернуть ему контроль над терминалом. Если есть несколько фоновых заданий, запустите jobs
, чтобы увидеть список, и fg %1
, fg %2
и т. Д., Чтобы выбрать, какое задание вернуть на передний план. См. статью Википедии о контроле за работой для получения дополнительной информации.
Если программа работает на переднем плане, нажмите Ctrl kbd> + Z kbd>, чтобы приостановить ее. Когда вы сделаете это, вы получите приглашение оболочки. Запустите bg
, чтобы программа продолжала работать, но в фоновом режиме.
Если фоновое задание завершается, оболочка напечатает уведомление при следующем отображении приглашения. Если фоновое задание требует ввода с терминала, оно будет автоматически приостановлено («остановлено»); fg
(или fg %42
при необходимости) возобновляет его.
Если вы хотите вызвать более видимое уведомление о завершении программы, вы можете запустить что-то вроде
fg; play bell.ogg & xmessage "torrents downloaded"
Команда fg
возвращается, когда программа, которую она возобновляет, завершается, так что все, что вы сказали оболочка для запуска после fg
будет запущена после завершения программы. Обратите внимание, что если вы нажмете Ctrl kbd> + Z kbd>, чтобы вернуть задание обратно в фоновый режим, оболочка прекратит ждать и сразу же выполнит следующие команды.