每天一个Linux命令(40):killall

    xiaoxiao2021-04-12  34

    killall用于杀死指定名字的进程(kill processes by name)。我们可以使用kill杀死指定进程PID的进程,如果要找到需要杀死的进程,我们还需要在此之前使用ps配合grep查找进程,而killall把这两个过程合二为一。

    1. 命令格式

    killall [参数] [进程名]

    2. 命令功能

    用来结束同名的所有进程

    3. 命令参数

    -Z,只杀死拥有scontext的进程

    -e,要求匹配进程名称

    -I,忽略小写

    -g,杀死进程组而不是进程

    -i,交互模式,杀死进程前先询问用户

    -l,列出所有的已知信号名称

    -q,不输出警告信息

    -s,发送指定的信号

    -v,报告信号是否成功发送

    -w,等待进程死亡

    –help,显示帮助信息

    –version,显示版本显示

    4. 使用实例

    例一:杀死所有的同名进程

    命令:killall vi

    # ps -ef|grep vi root 17581 17398 0 17:51 pts/0 00:00:00 vi test.txt root 17611 17582 0 17:51 pts/1 00:00:00 grep vi # vi test.log # ps -ef|grep vi root 17581 17398 0 17:51 pts/0 00:00:00 vi test.txt root 17640 17612 0 17:51 pts/2 00:00:00 vi test.log root 17642 17582 0 17:51 pts/1 00:00:00 grep vi # killall vi # ps -ef|grep vi root 17645 17582 0 17:52 pts/1 00:00:00 grep vi

    例二:向进程发送指定的信号

    命令:

    killall -TERM vi 或 killall -KILL vi # vi & //后台运行vi [1] 17646 # killall -TERM vi [1]+ Stopped vi # vi & [2] 17648 # ps -ef|grep vi root 17646 17582 0 17:54 pts/1 00:00:00 vi root 17648 17582 0 17:54 pts/1 00:00:00 vi root 17650 17582 0 17:55 pts/1 00:00:00 grep vi [2]+ Stopped vi # killall -TERM vi # ps -ef|grep vi root 17646 17582 0 17:54 pts/1 00:00:00 vi root 17648 17582 0 17:54 pts/1 00:00:00 vi root 17653 17582 0 17:55 pts/1 00:00:00 grep vi # killall -KILL vi [1]- 已杀死 vi [2]+ 已杀死 vi # ps -ef|grep vi root 17656 17582 0 17:56 pts/1 00:00:00 grep vi

    例三:杀掉所有登录后的shell

    命令:killall -9 bash

    # w //用来查看登录者的信息及他们的行为 18:01:03 up 41 days, 18:53, 3 users, load average: 0.00, 0.00, 0.00USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 10.2.0.68 14:58 9:52 0.10s 0.10s -bash root pts/1 10.2.0.68 17:51 0.00s 0.02s 0.00s w root pts/2 10.2.0.68 17:51 9:24 0.01s 0.01s -bash # killall -9 bash # w 18:01:48 up 41 days, 18:54, 1 user, load average: 0.07, 0.02, 0.00USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 10.2.0.68 18:01 0.00s 0.01s 0.00s w

    说明:运行killall -9 bash后,所有的bash都被卡掉了,所以当前所有连接丢失了,需要重新连接并登录。

    转载请注明原文地址: https://ju.6miu.com/read-667403.html

    最新回复(0)