Что делает -9
?
Это не отображается в синтаксисе:
$ kill
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
$
utilities
kill
command-switch
Lazer
источник
источник
-9
является экземпляром-sigspec
, это эквивалентно-s 9
или-n 9
или-s KILL
или или-KILL
.Ответы:
-9
это номер сигнала (в данном случаеSIGKILL
), поэтомуkill -9
отправляетSIGKILL
в рассматриваемый процесс.Этот сигнал вызывает немедленное завершение процесса (если он не ожидает в функции ядра). Сигнал не может быть ни проигнорирован, ни процесс приема не может выполнить какое-либо действие по очистке после получения сигнала (то есть обработчик сигнала для
SIGKILL
не вызывается). Смотрите также статью в Википедии о SIGKILL .Со страницы руководства моей
kill
команды (Linux):РЕДАКТИРОВАТЬ :
kill -l
(bash
встроенная команда) перечисляет следующие имена сигналов и числовые значения в моей системе:источник
kill -l
перечислены числовые значения. Какая у тебя ОС?man kill
списке числовые значения для некоторых сигналов.kill
это вprocps
версии, которая1:3.2.8-9
в Debian сжать. И да, Ubuntu - это в основном Debian. Поэтому мне интересно, почемуkill -l
не возвращается то же самое.zsh
встроеннуюkill
команду, а не/bin/kill
(которая фактически перечисляет числовые значения, как вы говорите)kill
встроенном. Это позволяетkill
команде принимать рабочие номера или имена (напримерkill %1
). И это позволяетkill
использовать, даже если был достигнут некоторый предел количества процессов.man signal
Покажет вам соответствие между номерами сигналов и именами сигналов.
источник