Kill
kill -9 <pid>
和kill -INT <pid>
之間的區別?
我無法弄清楚兩者之間有什麼區別
kill -9 <pid>
和
kill -INT <pid>
誰能像我3歲一樣向我解釋一下?
kill -INT $pid
向具有程序 ID 的程序發送“中斷”信號pid
。但是,該程序可能決定忽略該信號,或者在退出和/或忽略它之前擷取該信號並執行某些操作。
kill -9 $pid
發送無法擷取或忽略的“kill”信號。該程序將被強制關閉,而不會通知該程序,也沒有機會進行任何清理。kill -9 $pid
幾乎不應該推薦或使用,儘管有時它是必要的。高級概念
kill -INT $pid
是一樣的kill -2 $pid
。
kill -9 $pid
是相同的kill -KILL $pid
該命令有許多版本
kill
。大多數 shell(ksh、bash、dash 等)都有內置kill
命令,並且在/bin/kill
. 它們都略有不同,但大多數都支持上述範例。大多數 kill 命令都有一個
-l
or-L
選項來列出信號:$ /bin/kill -L 1 HUP 2 INT 3 QUIT 4 ILL 5 TRAP 6 ABRT 7 BUS 8 FPE 9 KILL 10 USR1 11 SEGV 12 USR2 13 PIPE 14 ALRM 15 TERM 16 STKFLT 17 CHLD 18 CONT 19 STOP 20 TSTP 21 TTIN 22 TTOU 23 URG 24 XCPU 25 XFSZ 26 VTALRM 27 PROF 28 WINCH 29 POLL 30 PWR 31 SYS $
閱讀信號的好地方是手冊第 7 節中的“信號”手冊頁:
man 7 signal
.