Linux 之 killall 命令
Linux 系统中的 killall 命令用于杀死指定名字的进程(kill processes by name)。我们可以使用 kill 命令杀死指定进程 PID 的进程,如果要找到我们需要杀死的进程,我们还需要在之前使用 ps 等命令再配合 grep 来查找进程,而 killall 把这两个过程合二为一,是一个很好用的命令。
Centos 安装killall
命令
Ubuntu 安装killall
命令
命令格式
killall [参数] [进程名]
命令功能
用来结束同名的的所有进程
命令参数
-Z 只杀死拥有 scontext 的进程
-e 要求匹配进程名称
-I 忽略小写
-g 杀死进程组而不是进程
-i 交互模式,杀死进程前先询问用户
-l 列出所有的已知信号名称
-q 不输出警告信息
-s 发送指定的信号
-v 报告信号是否成功发送
-w 等待进程死亡
--help 显示帮助信息
--version 显示版本显示
杀死所有同名进程
向指定进程发送信号
后台运行程序:
vi &
杀死 vi 进程:
killall -TERM vi
或者killall -KILL vi
TERM
信号将终止所有不能捕获该信号的进程KILL
信号将强制杀死进程
把所有的登录后的 shell 给杀掉
运行命令:killall -9 bash 后,所有 bash 都会被卡掉了,所以当前所有连接丢失了。需要重新连接并登录。
通过模糊匹配杀死所有进程
服务器运行了
rumenz1
,rumenz2
,rumenz3
进程
强制杀死
rumenz1
,rumenz2
,rumenz3
进程
终止某个用户所运行的进程
我们只想杀死运行时间超过 6h 的进程
那么可以使用
-o
选项,其中o
代表older
杀死进行时间小于 5h 的进程
-y
选项,其中y
代表younger
忽略大小写结束进程
killall 命令是大小写敏感的,所以我们如果写错大小写,将无法正确杀死进程
关闭命令执行回显
默认情况下,killall 会告诉你命令执行情况,但是,我们如果不关心它的执行结果,只想让它静默执行,只需加上
-q
选项即可,其中q
表示quite
。
列出所有支持的信号
交互式操作
如果你在杀死多个进程时不太放心,担心把不该杀死的进程给杀死了,那么你可以使用
-i
选项
等待直到某个进程被终止
当一个信号被发送至某个进程,如果你想确定该进程已经被杀死了才返回执行结果,可以使用
-w
选项,其中w
代表wait
原文链接:https://rumenz.com/rumenbiji/linux-killall.html
微信公众号:入门小站
版权声明: 本文为 InfoQ 作者【入门小站】的原创文章。
原文链接:【http://xie.infoq.cn/article/68eb9b6d21cefd7bfe238918a】。文章转载请联系作者。
评论