# kill
发送信号到进程。
## 内建命令
```bash
kill [-s sigspec | -n signum | -sigspec] pid | jobspec ...
kill -l [sigspec]
```
选项
```bash
-s sig 信号名称。
-n sig 信号名称对应的数字。
-l 列出信号名称。如果在该选项后提供了数字那么假设它是信号名称对应的数字。
-L 等价于-l选项。
```
参数
- pid:进程ID
- jobspec:作业标识符
返回值
返回状态为成功除非给出了非法选项、执行出现错误。
## 外部命令
```bash
kill [-signal|-s signal|-p] [-q value] [-a] [--] pid|name...
kill -l [number] | -L
```
选项
```bash
-s, --signal signal 要发送的信号,可能是信号名称或信号对应的数字。
-l, --list [number] 打印信号名称或转换给定数字到信号名称。信号名称可参考文件(/usr/include/linux/signal.h)。
-L, --table 和'-l'选项类似,但是输出信号名称以及信号对应的数字。
-a, --all 不要限制“命令名到pid”的转换为具有与当前进程相同的UID的进程。
-p, --pid 打印目标进程的PID而不发送信号。
--verbose 打印信号以及接收信号的PID。
-q, --queue value 使用sigqueue(3)而不是kill(2)。参数value是信号对应的数字。
如果接收进程已为此信号安装了处理程序将SA_SIGINFO标记为sigaction(2),则可以获取
该数据通过siginfo_t结构的si_sigval字段。
--help 显示帮助信息并退出。
--version 显示版本信息并退出。
```