linux.sfttec.com[ホーム] > コマンド文字列順一覧 | カテゴリ一覧 > kill
kill -  プロセスにシグナルを送信又は、プロセスを強制終了
構文  
kill [-s signal] pid ... kill -l [signal]
オプション
-signal_num シグナルの番号。
-l [signal] シグナルの一覧を表示。
-s signal 送信するシグナルを指定。
pid 強制終了先又は送信先のプロセスID。
説明  
プロセスを強制終了させたり、プロセスにシグナルを送信したりする。
「9:SIGKILL」をプロセスに送信した場合、そのプロセスは強制終了させられる。
色々なシグナルがあるが、以下に主なものを示す。
主なシグナル (引数のsignalは下記のシグナル番号又はSIG...のシンボルの何れかを指定する)
1 : SIGHUP - 端末を閉じしたときにその端末から起動されたプロセスに送られるもの。
2 : SIGINT - 端末から「CTRL + C」を押下したときに発生するもの。
3 : SIGQUIT - 端末の終了キー「CTRL + \」で発生するもの。
4 : SIGILL - 不正な命令により発生するもの。
9 : SIGKILL - Killシグナルによるプロセス強制終了。
15 : SIGTERM - killコマンドがデフォルトで送信。受信したプロセスはキャッチや無視する事ができる。
使用例1 - シグナルの送信

確認用としてRubyスクリプトで、シグナルを受信してみる。 $ cat signal_rcv.rb Signal.trap(:HUP){puts "SIGHUPを受信"} Signal.trap(:INT){puts "SIGINTを受信"} Signal.trap(:QUIT){puts "SIGQUITを受信"} Signal.trap(:KILL){puts "SIGKILLを受信"} Signal.trap(:TERM){puts "SIGTERMを受信"} puts "実行プロセスIDは[#{Process.pid}]です。" sleep 100000 $ Rubyスクリプトを実行する。 $ ruby signal_rcv.rb & [1] 3511 $ 実行プロセスIDは[3511]です。 現在のプロセスの状態 $ ps PID TTY TIME CMD 2957 pts/0 00:00:01 bash 3511 pts/0 00:00:00 ruby 3512 pts/0 00:00:00 ps SIGTERMをRubyプロセスに送信する。(killコマンドがデフォルトで送信) $ kill 3511 SIGTERMを受信 SIGTERMをRubyプロセスに送信する。 $ kill -s SIGTERM 3511 SIGTERMを受信 SIGTERMをRubyプロセスに送信する。 $ kill -15 3511 SIGTERMを受信 SIGHUPをRubyプロセスに送信する。 $ kill -1 3511 SIGHUPを受信 SIGINTをRubyプロセスに送信する。 $ kill -2 3511 SIGINTを受信 Rubyプロセスに「強制終了」を送信する。(Rubyプロセスは強制終了させられる) $ kill -s SIGKILL 3511 [1]+ 強制終了 ruby signal_rcv.rb Rubyプロセスは強制終了させられたので存在しない。 $ ps PID TTY TIME CMD 2957 pts/0 00:00:01 bash 3513 pts/0 00:00:00 ps $

使用例2 - lオプション

$ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 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) SIGVTALRM 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 $ kill -l SIGQUIT 3 $ kill -l 3 QUIT

関連事項
&, jobs
linux.sfttec.com[ホーム] > コマンド文字列順一覧 | カテゴリ一覧 > kill