2015-09-11 96 views
1

嘗試用ps和ps -ef等一些例子,在Linux中使用kill-9 PID殺死一個進程後,如何驗證進程是否被殺死?Linux殺死進程kill -9 PID

+0

可以看到使用top命令的進程列表並殺死kill -9 PID,現在如何驗證天氣過程是否被殺死? – Joe

+1

人們通常只聽說過SIGKILL('-9')來終止進程。正確的方法是先好好地使用'kill -TERM pid'關閉它自己,如果它稍後沒有響應,那麼[你可以帶出](http://stackoverflow.com/questions/4042201/how-does-sigint-related-the-other-termination-signals)'kill -9'。這就像要求你的客人離開並在沒有任何警告的情況下將他射死一樣。 – msw

回答

0

再次運行ps aux stat,pid,你會看到這個pid的進程是一個殭屍(第一列中的'Z')或死亡。

編輯: 謝謝,馬克B,指向我關於殭屍。

+1

除非它是殭屍,或者用戶沒有特權來殺死特定的pid。 –

0

亞特殺,檢查PID的過程:

$ pidof PROCESS 

你應該看不到輸出進程是否正在消失。

另一個類似的方式:

$ ps aux | grep PROCESS 

注:

  • 你可以殺死自己的過程,但只有root用戶可以殺死系統進程或其他用戶進程。
  • 當你殺死進程後,你可以得到一個殭屍,你仍然可以在進程列表中看到它,但是在進程狀態Z(這意味着殭屍)。殭屍不會被殺死,它們已經死了,所以要「殺死」你需要殺死殭屍的殭屍。這就是說,一般來說,除非你有大量的殭屍進程,否則你不需要去除殭屍進程。