kill和kill 9的區別

2022-04-04 19:51:26 字數 402 閱讀 2199

kill和kill -9

,兩個命令在linux中都有殺死程序的效果,執行kill命令,系統會傳送乙個sigterm訊號給對應的程式。當程式接收到該signal訊號後,有以下幾種情況:

(1)程式立刻停止

(2)當程式釋放相應資源後再停止

(3)程式可能仍然繼續執行

大部分程式接收到sigterm訊號後,會先釋放自己的資源,然後再停止。但是也有程式可能接收訊號後,做一些其他的事情

(如果程式正在等待io,可能就不會立馬做出響應,我在使用wkhtmltopdf轉pdf的專案中遇到這現象),也就是說,sigterm多半是會被阻塞的。

kill -9命令,系統給對應程式傳送的訊號是sigkill,即exit。exit訊號不會被系統阻塞,所以kill -9能順利殺掉程序

kill和kill 9的區別

kill是linux下常見的命令。其man手冊的功能定義如下 kill send a signal to a process 明朗了,其實kill就是給某個程序id傳送了乙個訊號。預設傳送的訊號是sigterm,而kill 9傳送的訊號是sigkill,即exit。exit訊號不會被系統阻塞,所以k...

kill與kill 9的區別

kill命令格式 kill signal pid pid是程序號,可以用 ps 命令查出 signal是傳送給程序的訊號,預設引數下,kill 傳送sigterm 15 訊號給程序,告訴程序,你需要被關閉,請自行停止執行並退出。kill 9 傳送sigkill訊號給程序,告訴程序,你被終結了,請立刻...

kill 9 的shell指令碼

之前專案上的指令碼,放到這裡記錄一下 平時殺程序的時候都要先看下埠,然後再kill 9 這樣太麻煩,乾脆寫個指令碼放到伺服器,執行一下就可以了 如果殺特定的程式就不需要讀取輸入了,直接把前兩行刪掉,name換成對應名字就行 echo input name of the project read na...