假设我想杀死包含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