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命令的介绍到此结束。

原文地址:https://www.cnblogs.com/Cqlismy/p/13053970.html