3

Linux 批量杀死进程(详细版本) - jacknie23

 1 year ago
source link: https://www.cnblogs.com/jack-nie-23/p/16448688.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

当程序中有使用到多进程且进程数较多的情况,如下图,且需要通过控制台杀死所有的 GSM_run.py 的进程时,利用 kill 命令一个一个的去结束进程是及其耗时且繁琐的,这时就需要我们的kill多进程的命令工作了。

image-20220705204024311

批量 Kill 进程

命令:

er-hljs
ps -ef|grep GSM_run.py|grep -v grep|cut -c 9-15|xargs kill -9

命令说明 :

1、管道符 "|" 用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。

2、"ps -ef" 是 查看所有进程

其中 ps -aux 也是查看所有进程 不过两者右以下区别:

(1)-ef是System V展示风格,而-aux是BSD风格

​ Unix操作系统在操作风格上主要分为System V和BSD

(2)COMMADN列如果过长,-aux会截断显示,而-ef不会

(3)-aux可以查看进程的CPU占用率和内存占用率,而-ef不能

ps -aux
ps -ef

3、 "grep GSM_run.py" 列出含有关键字"GSM_run.py"的所有进程

4、"grep -v grep"是在列出的进程中去除含有关键字"grep"的进程

5、"cut -c 9-15"是截取输入行的第9个字符到第15个字符,而这正好是进程号PID

某些情况下 9-15 是 不够的 可以 写成 awk '{print $2}' 其 表示 按空格分割取第二个元素,即取进程号 PID。此时完整的命令为 :

er-hljs
ps -ef|grep GSM_run.py|grep -v grep|awk '{print $2}'|xargs kill -9

6、"xargs kill -9" xargs命令把前面命令的输出结果(PID)作为"kill -9"命令的参数,并执行

本文作者:jacknie23

本文链接:https://www.cnblogs.com/jack-nie-23/p/16448688.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK