Linux
Kill 命令的解碼標誌
我在一本用於 Linux shell 腳本的書上看到了這個命令
$ kill -HUP 1234 >killout.txt 2>killerr.txt
我知道該命令的作用,但我無法理解標誌**-HUP**
Linux下試試
man 7 signal
。
kill -HUP 1234
意思是“發送 SIGHUP 信號 (1) 到程序 1234”,所以它相當於kill -1 1234
. kill 發送的預設信號是 SIGTERM (15),因此kill 1234
等價於kill -TERM 1234
orkill -15 1234
。
-HUP
不是三個標誌H
,U
,P
就像在常見的單字母選項語法中一樣。由於歷史原因,該kill
命令採用可選的信號名稱或信號編號,前面帶有破折號 (-
)。kill -1 1234 kill -HUP 1234
(與 相反
kill 1 1234
,它將預設信號(SIGTERM)發送到程序 1 和 1234。)您的手冊頁可能會列出如下內容:
kill [ -signal | -s signal ] pid ...
這
-signal
意味著您可以使用破折號後跟信號名稱(可以是名稱或數字)。或者,您可以使用-s
後跟信號名稱的選項;這是具有相同含義的兩種不同語法。
kill -l
列出可用的信號名稱和相應的編號。