终止进程

终止进程

背景

服务器上有一些野进程,处于睡眠状态,尝试了以下几种方法都不行

ps -ef | grep username | grep -v grep | cut -c 9-15 | xargs kill -9
kill -9 $(ps -ef | grep username)
kill -9 $(ps -ef | grep sleep)
ps -ef | grep username
kill -9 pid 

解决办法

一个个删太麻烦了,于是就想到了打印出我所有的PID,然后一次终结。

打印当前用户所有PID的命令

ps -ef | grep username | awk'{print $2}'

这里$1还是$2自行调整,它表示每一行的第几个字段。我这里$1输出的是用户名,$2输出的是PID。但是还是差点,我们使用kill -9 后面多个PID之间是要空格隔开的,但是上面命令输出的是换行的。所以修改下输出格式。

ps -ef | grep username | awk'{printf "%s ", $2}'

于是结合$可以传参数,就可以复制粘贴上面命令的输出到下面命令中即可。

kill -9 pids

总结

还是用的kill -9 ,只不过多了一个把所有符合条件的pid都按指定格式答应出来,再复制粘贴。

awk是一种强大的文本处理工具,通常用于处理文本文件中的结构化数据。它允许您按行读取文本文件,并根据定义的规则进行数据的提取、转换和格式化。

posted @ 2024-04-01 12:29  ben犇  阅读(5)  评论(0编辑  收藏  举报