Ответы:
-9это номер сигнала (в данном случае SIGKILL), поэтому kill -9отправляет SIGKILLв рассматриваемый процесс.
Этот сигнал вызывает немедленное завершение процесса (если он не ожидает в функции ядра). Сигнал не может быть ни проигнорирован, ни процесс приема не может выполнить какое-либо действие по очистке после получения сигнала (то есть обработчик сигнала для SIGKILLне вызывается). Смотрите также статью в Википедии о SIGKILL .
Со страницы руководства моей killкоманды (Linux):
The default signal for kill is TERM. Use -l or -L to list available
signals. Particularly useful signals include HUP, INT, KILL, STOP,
CONT, and 0. Alternate signals may be specified in three ways: -9
-SIGKILL -KILL.
РЕДАКТИРОВАТЬ :
kill -l( bashвстроенная команда) перечисляет следующие имена сигналов и числовые значения в моей системе:
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
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
Покажет вам соответствие между номерами сигналов и именами сигналов.
-9является экземпляром-sigspec, это эквивалентно-s 9или-n 9или-s KILLили или-KILL.