kill
kill by process name
pkill stress
force kill
kill -9 pid
from https://blog.gtwang.org/linux/linux-kill-killall-xkill/
使用
killall
指令
大家應該會發現基本的
kill
指令有些缺點,每次要中止某個程式時,都要用 ps
指令先查詢該程式的行程 ID(Process ID),才能再用 kill
指令中止程式,有點麻煩,這種狀況就可以改用 killall
指令,這個指令個功能與 kill
指令幾乎相同,但是他是直接使用程式的名稱來指定要中止的程式,這樣只要知道程式名稱即可直接使用。killall
指令常用的參數有:-e
,--exact
:在程式名稱完全比對成功時,才中止程式。如果程式的名稱超過 15 個字元,其餘的字元在系統中會被捨去,這時候在預設的狀況下,killall
會把所有符合前 15 個字元的程式都中止掉,如果加上-e
參數的話,killall
指令就會跳過這種名稱過長的程式。-I
,--ignore-case
:在比對程式名稱時,英文大小寫視為相同(ignore case)。-i
,--interactive
:在中止程式之前,先以互動式的方式詢問。-l
,--list
:列出所有的訊號(signal)名稱。-r
,--regexp
:使用常規表示法(regular expression)指定程式名稱。-s
,--signal
:指定送出的訊號(signal)。-u
,--user
:只中止指定使用者所執行的程式。-o
,--older-than
:指定程式的開始執行時間點,必須在此時間點之前。-y
,--younger-than
:指定程式的開始執行時間點,必須在此時間點之後。
from http://tech.nikkeibp.co.jp/it/article/COLUMN/20131203/522202/
説明
シグナルを送ってプロセスを終了させる。killコマンドとの違いは、プロセスIDではなくプロセス名で指定する点である。シグナルを指定しなければTERMシグナル(SIGTERM)が使われる。シグナルの指定には、シグナル名もしくはシグナルIDのどちらを指定してもよい。
代表的なシグナル
SIGHUP(1) 制御端末との接続が切断された、または制御プロセスが終了したことによるプロセスの終了(Hangup)
SIGINT(2) キーボードからの割り込み(Ctrl+C)によるプロセスの終了(Interrrupt)
SIGQUIT(3) キーボードからのプロセス中止によるプロセスの終了(Quit)
SIGKILL(9) KILLシグナルによるプロセスの強制終了
SIGSEGV(11) 不正なメモリー参照によるプロセスの終了(Segmentation Fault)
SIGTERM(15) TERM(終了)シグナルによるプロセスの終了(Termination)
SIGCONT(18) 一時停止中のプロセスの再開(Continue)
SIGSTOP(19) 一時停止によるプロセスの停止(Stop)
使用例
vimプロセスをすべて終了させる。
$ killall vim
syslogdを再起動させる(設定変更の反映)。
# killall -s HUP syslogd
留言
張貼留言