Возможно, у вас более одного процесса
работает в фоновом режиме:
$ jobs
[1] Stopped teamviewer
[2]- Stopped vim
[3]+ Stopped firefox
используйте: fg %2
для отправки процесса vim обратно на передний план.
Чтобы отправить последний процесс обратно на передний план, просто используйте: fg
без
аргументы.
- Вы также можете ввести% process_name для возобновления остановленного процесса.
Чтобы приостановить процесс, работающий в фоновом режиме , используйте:
kill -19 %job_id.
Сигнал -19
- это SIGSTOP (сигнал посылается с помощью Ctrl - Z).
вы всегда можете увидеть список, набрав kill -l
Перемещение заданий между фоном / передним планом:
Если вы уже ввели команду и забыли использовать &
, вы можете поместить задний план на задний план, набрав ^Z (CTRL-Z)
, чтобы приостановить задание, а затем bg
, чтобы перевести его в фоновый режим. :
$ sleep 99
^Z
[1]+ Stopped sleep 99
$ bg
[1]+ sleep 99 &
Вы можете получить список заданий текущей оболочки, используя команду jobs
.
Просто помните, что «выход из оболочки» также влияет на задания:
- Задания, работающие в фоновом режиме, когда выходы из оболочки остаются работающими.
- Задания, которые ставятся на паузу («Остановлено») при выходе из оболочки, прекращаются.
Отправка сигналов на задания и процессы
Вы можете отправлять сигналы, включая сигналы завершения, в задания, которые запускаются из текущей оболочки, используя номера заданий с использованием% (JOBID) вместо номеров процессов (PID):
$ kill %1
[1]+ Terminated sleep 99
Чтобы отправлять сигналы процессам или заданиям, не запущенным из текущей оболочки, сначала необходимо использовать ps
, чтобы найти их номера процессов (PID).
Вы можете обратиться по этой ссылке:
процессы и задания
Общие команды управления заданиями в Linux:
- jobs - список текущих работ
- fg - возобновить работу, следующую в очереди
- фг % [число] - возобновить работу [номер]
- bg - Переместить следующее задание в очереди в фоновый режим
- bg % [число] - отодвинуть задание [число] на задний план
- kill % [число] - убить задание с номером [число]
- kill - [signal]% [number] - отправить сигнал [signal] на номер задания [number]
- disown % [число] - отключить процесс (терминал больше не будет владельцем), поэтому команда будет работать даже после закрытия терминала.
Это почти все из них. Обратите внимание на% infront номера задания в командах - это то, что говорит kill, вы говорите о заданиях, а не процессах.