假設我想殺死包含amarok這個詞的每個進程。我可以打印出我想要執行的命令。但是我怎麼才能讓shell執行它們。即。如何殺死所有與名稱匹配的進程?
ps aux | grep -ie amarok | awk '{print "kill -9 " $2}'
Output:
kill -9 3052
kill -9 3071
kill -9 3076
kill -9 3077
kill -9 3079
kill -9 3080
kill -9 3082
kill -9 3083
kill -9 3084
kill -9 3085
kill -9 3086
kill -9 3087
kill -9 3088
kill -9 3089
kill -9 4031
Add'| |在命令行的其餘部分之後是sh -x? – 2011-06-17 05:00:46
在進程中永遠不會使用'kill -9'參見[進程管理] [1] [1]:http://mywiki.wooledge.org/ProcessManagement?highlight=%28%5CbCategoryUnix%5Cb%29#I .27m_trying_to_kill_-9_my_job_but_blah_blah_blah ... – 2011-06-17 08:14:51
添加到上面的評論中,不僅是kill -9是一個糟糕的主意,而且還有一個事實,即您試圖通過其名稱殺死多個進程。對於一個過程的名稱沒有任何獨特之處,因此是識別的一個不好的候選者。 – 2014-12-02 21:47:06