Linux 命令(76) kill 命令

2021-09-28 11:40:43 字數 2118 閱讀 6550

kill 命令用於終止程序或向程序傳送指定訊號。

kill 命令可以傳送指定的訊號到相應的程序或程序組。不指定訊號預設傳送 sigterm(15)來終止指定程序。如果想強制終止程序,可以顯示指定 sigkill(9) 訊號,因為該訊號無法被程序捕獲。

本文介紹的是符合 posix 標準的 kill 功能,不同 linux 發行版對 kill 的實現有所不同,具體參見其對應的幫助手冊。

kill -l [signal]

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

運算元 pid 有兩種取值:

(1)程序 id 或者程序組 id;

(2)作業 id,用於標識執行於後台的一組程序。

-signal

-s signal

指定訊號名或訊號值

-l [signal]

指定訊號名或訊號值,轉換訊號名與訊號值。如果不指定訊號,則列出所有訊號。訊號的定義見 /usr/include/linux/signal.h

(1)強制殺死當前 shell 程序,退出當前會話。

echo $$

20174

kill -9 20174

(2)根據程序名稱先查詢出 pid 再強制殺死。

ps -ef | grep commadname | awk '' | xargs kill -9
也可以使用 killall 命令根據程序名稱殺死程序。

killall -9 commadname
(3)列出所有訊號。

kill -l

1) sighup 2) sigint 3) sigquit 4) sigill 5) sigtrap

6) sigabrt 7) sigbus 8) sigfpe 9) sigkill 10) sigusr1

11) sigse** 12) sigusr2 13) sigpipe 14) sigalrm 15) sigterm

16) sigstkflt 17) sigchld 18) sigcont 19) sigstop 20) sigtstp

21) sigttin 22) sigttou 23) sigurg 24) sigxcpu 25) sigxfsz

26) si**talrm 27) sigprof 28) sigwinch 29) sigio 30) sigpwr

31) sigsys 34) sigrtmin 35) sigrtmin+1 36) sigrtmin+2 37) sigrtmin+3

38) sigrtmin+4 39) sigrtmin+5 40) sigrtmin+6 41) sigrtmin+7 42) sigrtmin+8

43) sigrtmin+9 44) sigrtmin+10 45) sigrtmin+11 46) sigrtmin+12 47) sigrtmin+13

48) sigrtmin+14 49) sigrtmin+15 50) sigrtmax-14 51) sigrtmax-13 52) sigrtmax-12

53) sigrtmax-11 54) sigrtmax-10 55) sigrtmax-9 56) sigrtmax-8 57) sigrtmax-7

58) sigrtmax-6 59) sigrtmax-5 60) sigrtmax-4 61) sigrtmax-3 62) sigrtmax-2

63) sigrtmax-1 64) sigrtmax

只有第訊號 sigkill(9) 才可以無條件終止程序,其他訊號程序都有權忽略,下面是常用的訊號:

sighup	1	終端斷線

sigint 2 中斷(同 ctrl + c)

sigquit 3 退出(同 ctrl + \)

sigabrt 6 中止

sigkill 9 強制終止

sigterm 15 終止

sigcont 18 繼續(與 stop 相反)

sigstop 19 暫停(同 ctrl + z)

[1] kill(1) manual

linux命令(8)kill命令

kill命令 linux中的kill命令用來終止指定的程序 terminate a process 的執行,是linux下程序管理的常用命令。通常,終止乙個前台程序可以使用ctrl c鍵,但是,對於乙個後台程序就須用kill命令來終止,我們就需要先使用ps pidof pstree top等工具獲取...

linux下kill命令詳解

當需要中斷乙個前台程序的時候,通常是使用 ctrl c 組合鍵 但是對於乙個後台程序恐怕就不是乙個組合鍵所能解決的了,這時就必須求助於kill命令。該命令可以終止後台程序。至於終止後台程序的原因很多,或許是該程序占用的cpu時間過多 或許是該程序已經掛死。總之這種情況是經常發生的。kill命令是通過...

精通Linux的「kill」命令

參考 無論你使用哪種作業系統,你一定會遇到某個行為失常的應用,它把自己鎖死並拒絕關閉。在linux 還有mac 你可以用乙個 kill 命令強制終結它。在這個教程中,我們將展示給你多種方式使用 kill 命令終結應用。當你執行乙個 kill 命令,你實際上傳送了乙個訊號給系統,讓它去終結不正常的應用...