《Linux就该这么学》-新手必须掌握的Linux命令-killall命令-用于终止某个指定名称的服务所对应的全部进程
TIME 2022-12-05 20:49
killall命令
用于终止某个指定名称的服务所对应的全部进程,语法格式为 killall [参数] 服务名称
通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果用kill命令逐个去结束这些进程会比较麻烦,此时可以使用killall命令来批量结束某个服务程序带有的全部进程。
参数
-e | –exact : 进程需要和名字完全相符
-I | –ignore-case :忽略大小写
-g | –process-group :结束进程组
-i | –interactive :结束之前询问
-l | –list :列出所有的信号名称
-q | –quite :进程没有结束时,不输出任何信息
-r | –regexp :将进程名模式解释为扩展的正则表达式。
-s | –signal :发送指定信号
-u | –user :结束指定用户的进程
-v | –verbose :显示详细执行过程
-w | –wait :等待所有的进程都结束
-V |–version :显示版本信息
–help :显示帮助信息
实例
下面以nginx服务程序为例,来结束其全部进程
首先用pidof命令获取nginx服务程序的PID
pidof nginx
返回结果
487 485
用killall结束nginx服务程序的所有进程PID
killall nginx
无返回结果,再次查看nginx服务程序
pidof nginx
所有的nginx服务程序已被结束,无返回结果
通过模糊匹配杀死所有进程
服务器运行了rumenz1,rumenz2,rumenz3进程
killall -9 rumenz*
强制杀死rumenz1,rumenz2,rumenz3进程
把所有的已登录的shell给杀掉
killall -9 bash
运行命令:killall -9 bash 后,所有bash都会被卡掉了,所以当前所有连接丢失后需要重新连接并登录。
终止某个用户所运行的进程
killall -u deploy
我们只想杀死运行时间超过 6h 的进程
那么可以使用-o选项,其中o代表older
killall -o 6h
杀死进行时间小于 5h 的进程
killall -y 5h
-y 选项,其中y代表younger
忽略大小写结束进程
killall 命令是大小写敏感的,所以我们如果写错大小写,将无法正确杀死进程
killall -I rumenz
点击数:4