可快速瀏覽的每個標準 POSIX/Linux 程序訊號參考——從 SIGHUP 到 SIGSYS——顯示每個訊號的編號、預設動作(Term、Core、Ign、Stop、Cont)、是否可被攔截、由什麼引發以及對應的 shell 結束碼(128+N)。在瀏覽器中、免費使用。

每個標準 POSIX/Linux 程序訊號的說明。一切都從內建參考在您的瀏覽器中執行——不向伺服器傳送任何內容。

訊號 編號 預設動作 可攔截 描述 結束碼
沒有符合您搜尋的訊號。
請嘗試其他名稱或編號——例如 SIGTERM、11 或 segmentation。
除這些之外,Linux 還提供即時訊號 SIGRTMIN 到 SIGRTMAX(通常為訊號 34–64)。它們沒有預先定義的含義,並以保證的順序傳遞——應用程式自行為其指定用途。
所示的訊號編號為 x86/ARM ABI 的預設值。少數訊號在其他架構上(例如 Alpha、MIPS 和 SPARC)使用不同的編號,因此在指令稿中請務必優先使用符號名稱(SIGKILL)而非原始編號(9)。

關於 Linux 訊號

Linux 訊號參考表以一張可快速瀏覽的表格,列出所有標準的 POSIX/Linux 行程訊號,從 SIGHUP 到 SIGSYS。每一列都顯示訊號的編號、預設動作——終止、核心傾印、忽略、停止或繼續——行程是否能捕捉它、通常是什麼情況觸發它,以及行程因該訊號而終止時你會看到的 Shell 結束代碼(128 + N)。

那個結束代碼欄位解決了開發者每天都會遇到的謎題:以 137 結束的容器是被 SIGKILL(9)終止的,以 139 結束代表 SIGSEGV(11)造成的區段錯誤,而以 143 乾淨結束則是來自 SIGTERM(15)。搜尋功能可依名稱、編號、結束代碼或意義進行,讓你可以從手上任何一條線索開始查起。

兩則附註涵蓋了一般參考資料通常會略過的部分:沒有預定義意義、以保證順序傳遞的即時訊號 SIGRTMIN 到 SIGRTMAX,以及架構差異的注意事項——少數訊號編號在 Alpha、MIPS 與 SPARC 上有所不同,這也是為什麼指令碼應該使用符號名稱的原因。所有功能都在你的瀏覽器中運作。

如何使用 Linux 訊號

  1. 依名稱(SIGKILL)、編號(9)、Shell 結束代碼(137)或像「segmentation」這樣的關鍵字搜尋訊號。
  2. 閱讀該列資訊:編號、預設動作、是否可被捕捉,以及觸發它的原因。
  3. 利用結束代碼欄位,將 128+N 的 Shell 狀態換算回終止該行程的訊號。
  4. 使用該列的複製按鈕複製訊號名稱或結束代碼。
  5. 如果你在撰寫可攜式指令碼,請查看關於即時訊號與各架構編號差異的附註。

常見問題

SIGTERM(15)禮貌地要求行程結束——它可以被捕捉,因此行程可能會先進行清理。SIGKILL(9)則會在核心層級立即終止行程,無法被捕捉、封鎖或忽略。務必先嘗試 SIGTERM,再考慮使用 kill -9。

SIGKILL 與 SIGSTOP。核心會直接強制執行這兩者,因此沒有任何處理常式能夠攔截它們——SIGKILL 永遠會終止行程,SIGSTOP 永遠會暫停行程。

當行程被某個訊號終止時,Shell 會回報 128 加上該訊號編號的結果。所以 139 就是 128 + 11:代表該行程是因 SIGSEGV(區段錯誤)而終止。表格中每個致命訊號旁都會列出這個結束代碼。

SIGRTMIN 到 SIGRTMAX——在 Linux 上通常是編號 34 到 64。與標準訊號不同,它們沒有預定義的意義,而是以保證順序被排入佇列並傳遞,因此應用程式可以自行賦予它們用途。

因為少數訊號編號在不同 CPU 架構(如 Alpha、MIPS 與 SPARC)之間有所不同。使用符號名稱——例如 kill -TERM 而非 kill -15——在任何地方都代表相同的意思,因此是更具可攜性的選擇。

是的,完全免費。完整表格內建於頁面中,所有搜尋與複製都在你的瀏覽器中完成。

需要協助?
使用此工具時遇到問題?請告訴我們的團隊。
回報問題

將此免費工具新增到你自己的網站 — 複製並貼上下面的程式碼。