我想杀死所有我通过的进程:
ps aux | grep my_pattern
怎么做?
这不起作用:
pkill my_pattern
我想杀死所有我通过的进程:
ps aux | grep my_pattern
怎么做?
这不起作用:
pkill my_pattern
当前回答
这是一种方式:
kill -9 $(pgrep -d' ' -f chrome)
pgrep搜索与chrome相关的所有进程,并在一个用空格分隔的列表中返回它们。
这将传递给kill应用程序,该应用程序可以安全地终止所有相关的chrome进程。
这仍然很危险,小心。
其他回答
如果你认为pkill-f模式有点太危险,我编写了一个bash脚本,提示你在那些与你想要杀死的模式匹配的进程中选择哪个进程。
警告:不再维护此项目。
如果您在选择流程时需要更多的灵活性,请使用
for KILLPID in `ps ax | grep 'my_pattern' | awk ' { print $1;}'`; do
kill -9 $KILLPID;
done
您可以使用grep-e等。
如果您不想为查找进程id而头疼,请使用regexp按名称终止进程。例如,要杀死chrome,请执行以下代码。
killall-r铬
可以使用以下命令:
ps -ef | grep -i myprocess | awk {'print $2'} | xargs kill -9
or
ps -aux | grep -i myprocess | awk {'print $2'} | xargs kill -9
这对我有用。
找到了对不支持pkill的服务器执行此操作的最佳方法
kill -9 $(ps ax | grep My_pattern| fgrep -v grep | awk '{ print $1 }')
你不必循环。