Câu trả lời:
-9
là số tín hiệu (trong trường hợp này SIGKILL
), vì vậy kill -9
sẽ gửi a SIGKILL
đến quy trình được đề cập.
Tín hiệu này làm cho quá trình chấm dứt ngay lập tức (trừ khi nó chờ trong hàm kernel). Tín hiệu không thể bị bỏ qua cũng như quá trình nhận có thể thực hiện bất kỳ hành động dọn sạch nào sau khi nhận tín hiệu (nghĩa là bộ xử lý tín hiệu SIGKILL
không được gọi). Xem thêm bài viết Wikipedia về SIGKILL .
Từ trang man của kill
lệnh của tôi (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.
EDIT :
kill -l
( bash
lệnh tích hợp) liệt kê các tên tín hiệu và giá trị số sau đây trên hệ thống của tôi:
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
liệt kê các giá trị số. HĐH của bạn là gì?
man kill
liệt kê các giá trị số cho một số tín hiệu.
kill
là trong procps
, đó là phiên bản 1:3.2.8-9
trong Debian bóp. Và vâng, Ubuntu về cơ bản là Debian. Vì vậy, tôi tự hỏi tại sao kill -l
không trả lại điều tương tự.
zsh
dựng sẵn kill
, không phải /bin/kill
(mà thực sự liệt kê các giá trị số như bạn nói)
kill
hợp sẵn. Nó cho phép kill
lệnh chấp nhận số công việc hoặc tên (ví dụ kill %1
). Và nó cho phép kill
được sử dụng ngay cả khi đã đạt đến một số giới hạn số lượng quá trình.
man signal
Sẽ cho bạn thấy ánh xạ giữa số tín hiệu và tên tín hiệu.
-9
là một thể hiện của-sigspec
, nó tương đương với-s 9
hoặc-n 9
hoặc-s KILL
hoặc-KILL
.