Остановка заданий с помощью PID?

Может ли кто-нибудь сказать мне, почему я не могу убить задания ниже при указании их PID? Я могу остановить работу при использовании их% id.

Mac: ~ gd $ ps

PID TTY TIME CMD

4523 ttys000 0: 00,02 –bash

4560 ttys000 0: 00.00 gpg

4609 ttys000 0: 00.00 gpg

Mac: ~ gd $ kill 4560

Mac: ~ gd $ kill 4609

Mac: выход ~ gd $

выйти

Завершены рабочие места.

Mac: задания ~ g $

[1] – Остановлен gpg

[2] + Остановлен gpg

Mac: ~ gd $ kill% 1

gpg: сигнал Завершение захвата … выход

One Solution collect form web for “Остановка заданий с помощью PID?”

Потому что kill %n будет запускать встроенную оболочку, что позволит остановить SIGCONT чтобы они могли понять, что они были убиты.

Чтобы добиться этого с помощью PID остановленных заданий, вам необходимо:

 kill $pid 

(Или kill -TERM $pid если вы хотите сделать его явным)

а потом

 kill -CONT $pid 

Вы не нуждаетесь в -CONT если вы идете на конечное оружие убийства:

 kill -KILL $pid 
  • killall не работает, если я вызываю его из скрипта
  • Убивать работу
  • Почему команда killall убивает только один экземпляр процесса?
  • kill: SIGSTOP: неверная ошибка спецификации сигнала в сценарии bash
  • Получить возвращаемое значение процесса с помощью PID
  • Изящный способ убить процесс
  • Как умело убить демона с его именем?
  • Убить все процессы потомства
  • Может ли скрипт работать даже после его смерти?
  • Как убить упрямый процесс
  • Как убить (последний - 1) PID с помощью bash
  • Linux и Unix - лучшая ОС в мире.