kill
概要
主要用途
- 发送信号到作业或进程(可以为多个)。
- 列出信号。
选项
-n sig 信号名称对应的数字。
-L 等价于-l选项。
参数
pid:进程ID
jobspec:作业标识符
返回值
例子
# 以下发送KILL信号的形式等价。当然还有更多的等价形式,在此不一一列举了。
[user2@pc] kill -s SIGKILL PID
[user2@pc] kill -s KILL PID
[user2@pc] kill -n 9 PID
[user2@pc] kill -9 PID
[user2@pc] sleep 90 &
[1] 178420
# 终止作业标识符为1的作业。
[user2@pc] kill -9 %1
[user2@pc] jobs -l
[1]+ 178420 KILLED ssh 192.168.1.4
[user2@pc] sleep 90 &
[1] 181357
# 发送停止信号。
[user2@pc] kill -s STOP 181357
[user2@pc] jobs -l
[1]+ 181537 Stopped (signal) sleep 90
# 发送继续信号。
[user2@pc] kill -s CONT 181357
[user2@pc] jobs -l
[1]+ 181537 Running sleep 90 &
注意
bash
的作业控制命令包括bg fg kill wait disown suspend
。- 该命令是bash内建命令,相关的帮助信息请查看
help
命令。
概要
主要用途
发送信号到进程(可以为多个)。
列出信号。
选项
-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 显示版本信息并退出。
参数
PID:每一个PID可以是以下四种情况之一:
name:使用此名称调用的所有进程将接收信号。
例子
返回值
- 0 成功。
- 1 失败。
- 64 部分成功(当指定了多个进程时)。
注意
- 该命令是
GNU coreutils
包中的命令,相关的帮助信息请查看man -s 1 kill
或info coreutils 'kill invocation'
。 - 与
kill
命令类似的有xkill
,,killall
等,用于不同的目的和场景。