Linux中使用kill命令向进程发送信号
1、kill命令
Linux操作系统中的kill命令能用来删除执行中的程序或者工作,kill命令可将指定的信号送到程序,预设的信号为SIGTERM(15),能将指定程序进行终止,如果无法终止程序的话,能使用SIGKILL(9)信号进行强制删除程序,对于程序的进程号能通过ps命令进行查看。
(1)命令语法
kill(选项)(参数)
(2)常用选项
-a:当处理当前进程时,不限制命令名和进程号的对应关系;
-l<信号编号>:如果不添加<信号编号>选项,则-l选项将列出全部的信号名称;
-p:指定kill命令只打印相关进程的进程号,而不发送任何信号;
-s<信号名称或者编号>:指定要发送的信号;
-u:指定用户。
(3)参数
进程或作业识别号:指定要删除的进程或者作业。
(4)实例
列出当前系统所有的信号名称:
$ kill -l
效果如下所示:
常用的信号有如下:
信号编号 | 信号名称 | 信号含义 |
1 | SIGHUP | 挂起信号 |
2 | SIGINT | 中断信号(同Ctrl + C) |
3 | SIGQUIT | 退出信号(同Ctrl + \) |
9 | SIGKILL | 杀死信号 |
11 | SIGSEGV | 段错误信号 |
15 | SIGTERM | 终止信号(默认) |
18 | SIGCONT | 继续运行信号 |
19 | SIGSTOP | 暂停信号(同Ctrl + Z) |
在后台产生一个简单的进程:
$ ping www.baidu.com > /dev/null &
$ jobs -l
效果如下:
可以看到产生的job号码为405530,接下来使用kill命令进行杀死该进程:
$ kill -9 405530 $ jobs -l
执行效果如下:
kill命令的介绍到此结束。