KILL(1)

名称
kill - 向一个或多个进程发送一个信号

概述
kill [-q 值|--queue 值] pid ...

kill -信号 [-q 值|--queue 值] pid或pgid ...
kill -s 信号 [-q 值|--queue 值] pid或pgid ...
kill --signal 信号 [-q 值|--queue 值] pid或pgid ...

kill -l [信号]
kill --list [信号]

kill -L
kill --table

描述
kill 根据 pid（进程标识符）或 pgid（进程组标识符）发送信号给一个或多个进程。signal(7) 解释了各种信号的行为。kill 的默认信号是 TERM。使用 -l 或 -L 选项列出可用的信号。特别有用的信号包括 HUP、INT、KILL、STOP、CONT 和 0。可以使用编号、名称或含有 "SIG" 前缀的名称指定信号；例如，-9、-SIGKILL 和 -KILL 等价。负的操作数选择整个进程组；请参阅 ps(1) 命令输出中的 PGID 列。pid -1 是特殊的；它表示除 kill 进程本身和 init(8) 之外的所有进程。

-q 选项使用了另外一种信号发送方法，可以传递一个整数 值 给接收信号的进程。如果该进程安装了该信号的处理程序，且调用 sigaction(2) 时指定了 SA_SIGINFO 标志，那么它可以通过 siginfo_t 结构的 si_value 字段获取该数据。

选项

-信号
-s 信号
--signal 信号
    根据名称或编号发送信号，像上面描述的那样。如果 信号 是 0（零），kill 不发送信号，但仍然验证它的操作数；这一行为允许调用者检查指定的 pid 和/或 pgid 是否存在，以及它是否有权限向它们发送信号。

-q 值
--queue 值
    使用 sigqueue(3) 而不是 kill(2) 以向每个 pid 或 pgid 额外发送一个 值。

-l [信号]
--list [信号]
    不带参数时，列出信号名称。带了可选的参数时，kill 视情况将指定的 信号 的名称转换成编号，或将编号转换成名称，并返回转换的结果。

-L
--table
    以表格形式列出信号名称。

备注
系统的 shell（命令行解释器）常常有一个内置的 "kill" 命令。您可能需要使用 /bin/kill 来运行此处描述的命令，以覆盖 shell 的内置命令。

如果您想使用负的操作数，请先用名称或编号指定信号，这样 kill 才能将它和进程组区别开来。例如，命令 "kill 123 -9" 有歧义；它的意思可以是向进程 123 发送信号 9，也可以是向进程 123 和进程组 9 发送默认信号。

示例

kill -HUP -1
    将挂断信号发送给所有可以发送的进程。

kill -l 11
    返回和信号编号 11 对应的信号名称。

kill 123 543
    将默认的信号，SIGTERM，发送给进程 123 和 543。

kill -SIGTERM -123
    将信号 SIGTERM 发送给进程组 123。

参见
kill(2), killall(1), nice(1), pkill(1), renice(1), signal(7), sigqueue(3), skill(1)

报告错误
请将错误报告发送到 procps@freelists.org。