kill使用

kill:终止进程

kill 命令的参数选项及说明

-l 列出全部的信号名称
-p 指定kill命令只打印相关进程的进程号,而不发送任何信号
-s 指定要发送的信号

常用信号

信号        说明
HUP(1)    挂起,通常因终端掉线或用户退出而引发
INT(2)    中断,通常是按下Ctrl+c组合健来发出这个信号
QUIT(3)   退出,通常是按下Ctrl+\组合键来发出这个信号
KILL(9)   立即结束进程的运行
TERM(15)  终止,通常在系统关机时发送
TSTP(20)  暂停进程的运行,通常是按下Ctrl+z组合键来发出这个信号

killall:通过进程名终止进程

使用kill命令终止进程还需要先获取进程的pid进程号,这个过程有点繁琐,而使用killall命令就可以直接用“killall 进程名”这种形式终止进程。

-c 对于很长的名字,要求能够准确匹配。默认情况下,如果一个进程名的长度超过了15个字符,则无法使用整个名字(溢出了)。在这种情况下,killall会终止所有匹配名字前15个字符的所有进程。而-e参数的作用是忽略模糊匹配项目。如果同时指定了-v选项,则killall会针对每个忽略的记录打印一条消息
-I 不区分大小写匹配
-g 终止属于该进程组的进程
-i 在终止进程之前询问是否确认
-l 列出所有已知的信号名
-q 如果没有进程终止则不提示
-r 使用正则表达式匹配要终止的进程名称
-s 用指定的信号代替默认信号
-u 终止指定用户的进程
-v 报告信号是否发送成功
-w 等待所有被终止的进程死去。killall每秒都会检查一次被终止的进程是否仍然存在,其仅在都死光后才返回。注意,如果信号被忽略,或者没有起作用,或者进程停留在僵尸状态,那么killall可能会永久等待

[root@cs6 ~]# killall crond
[root@cs6 ~]# killall crond
crond: 没有进程被杀死
[root@cs6 ~]# /etc/init.d/crond start
正在启动 crond:                                           [确定]
[root@cs6 ~]# killall -w crond
[root@cs6 ~]# killall -w crond
crond: 没有进程被杀死

3# 终止指定用户的所有进程
killall -u www nginx #<=这种方式可以终正所有归属于www用户的nginx进程

pkill:通过进程名终止进程

pkil命令可通过进程名终止指定的进程。使用killal终止进程需要连续执行几次,而pkill 可以杀死指定进程及其所有子进程。
pkill [选项] [进程名]

-t 终端 杀死指定终端的进程
-u 用户 杀死指定用户的进程

通过进程名终止进程
[root@cs6 ~]# service crond status
crond (pid 4641) 正在运行…
[root@cs6 ~]# pkill crond
[root@cs6 ~]# service crond status
crond 已死,但是 subsys 被锁
pkill [选项] [进程名]

-t 终端 杀死指定终端的进程
-u 用户 杀死指定用户的进程

通过进程名终止进程
[root@cs6 ~]# service crond status
crond (pid 4641) 正在运行…
[root@cs6 ~]# pkill crond
[root@cs6 ~]# service crond status
crond 已死,但是 subsys 被锁
通过终端名终止进程
[root@cs6 ~]# w
07:20:39 up 1 day, 22:40, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/4 10.0.0.1 00:59 0.00s 0.53s 0.00s w
[root@cs6 ~]# pkill -t tty4
通过用户名终止进程

[root@cs6 ~]# w
07:22:39 up 1 day, 22:42,  2 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1         07:21    1:34   0.07s  0.07s -bash
root     pts/4    10.0.0.1         00:59    0.00s  0.54s  0.00s w
[root@cs6 ~]# pkill -u root
Connection closing...Socket close.
 
Connection closed by foreign host.
 
Disconnected from remote host(cs6-minimal) at 15:24:31.

#<=使用 -u 选项杀死指定用户的所有进程,最好还是同时再指定进程名去杀,以免误杀服务。

[root@cs6 ~]# w
07:20:39 up 1 day, 22:40,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/4    10.0.0.1         00:59    0.00s  0.53s  0.00s w
[root@cs6 ~]# pkill -t  tty4

通过用户名终止进程

[root@cs6 ~]# w
07:22:39 up 1 day, 22:42,  2 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1         07:21    1:34   0.07s  0.07s -bash
root     pts/4    10.0.0.1         00:59    0.00s  0.54s  0.00s w
[root@cs6 ~]# pkill -u root
Connection closing...Socket close.
 
Connection closed by foreign host.
 
Disconnected from remote host(cs6-minimal) at 15:24:31.

#<=使用 -u 选项杀死指定用户的所有进程,最好还是同时再指定进程名去杀,以免误杀服务。

参考链接 :

https://blog.csdn.net/weixin_30512785/article/details/95638604?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寰宇001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值