Linux系统中的killall命令用于杀死指定名字的进程(kill processes by name)。我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀死的进程,我们还需要在之前使用ps等命令再配合grep来查找进程,而killall把这两个过程合二为一,是一个很好用的命令。

1.命令格式:

1
killall [参数] [进程名]

2.命令功能:

 用来结束同名的的所有进程

3.命令参数:

1
2
3
4
5
6
7
8
9
10
11
12
-Z, 只杀死拥有scontext的进程
-e, 要求匹配进程名称
-I, 忽略小写
-g, 杀死进程组而不是进程
-i, 交互模式,杀死进程前先询问用户
-l, 列出所有的已知信号名称
-q, 不输出警告信息
-s, 发送指定的信号
-v, 报告信号是否成功发送
-w, 等待进程死亡
--help, 显示帮助信息
--version, 显示版本显示

4.使用实例:

实例1:杀死所有同名进程

1
killall vi

实例2:向进程发送指定信号

1
2
3
4
5
6
#后台运行程序:
vi &
# 杀死vi进程:
killall -TERM vi
# 或:
killall -KILL vi

实例3:把所有的登录后的shell给杀掉

1
killall -9 bash

运行命令后,所有bash都会被卡掉了,所以当前所有连接丢失了。需要重新连接并登录。