解码 Kill 命令的标志

解码 Kill 命令的标志

我在一本 Linux shell 脚本编写的书中看到了这个命令

$ kill -HUP 1234 >killout.txt 2>killerr.txt

我知道该命令的作用,但我无法理解这些标志-HUP

答案1

Linux下试试man 7 signal

kill -HUP 1234意思是“发送 SIGHUP 信号 (1) 到进程 1234”,所以它相当于kill -1 1234. Kill 发送的默认信号是 SIGTERM (15),因此kill 1234相当于kill -TERM 1234kill -15 1234

答案2

-HUP不是常见的单字母选项语法中的三个标志H, UP由于历史原因,该kill命令采用可选的信号名称或信号编号,前面带有破折号 ( -)。

kill -1 1234
kill -HUP 1234

(与 相反kill 1 1234,它将向进程 1 和 1234 发送默认信号 (SIGTERM)。)

你的手册页可能列出了这样的内容:

kill [ -signal | -s signal ] pid ...

-signal意味着您可以使用破折号后跟信号名称(可以是名称或数字)。或者,您可以使用-s后跟信号名称的选项;这是两种不同的语法,但含义相同。

kill -l列出可用的信号名称和相应的编号。

最多信号具有基于预定义的含义谁在什么时候发送它们以及流程应该如何以及如何对它们做出反应。

相关内容