kill コマンド:シグナルの送信
コマンドの概要
kill
コマンドは、プロセスにシグナルを送信するために使用されます。通常、kill
コマンドはプロセスID(PID)を指定して実行され、そのPIDを持つプロセスに指定されたシグナルを送信します。
コマンドの主なオプションと説明
オプション | 説明 |
---|---|
-l, --list | 利用可能なシグナルの一覧を表示する |
-s, --signal <シグナル名または番号> | 送信するシグナルを指定する |
-<シグナル名または番号> | 送信するシグナルを指定する(一部の環境では利用不可) |
「killall」コマンドについて
killall
コマンドは、プロセス名に基づいてプロセスを終了するために使用されます。kill
コマンドとは異なり、プロセスIDではなくプロセス名を指定します。
「kill」と「killall」コマンドの違い
kill
コマンド
プロセスID(PID)を指定してプロセスにシグナルを送信する。killall
コマンド
プロセス名を指定してプロセスを終了する。同じ名前の複数のプロセスが存在する場合、全ての該当プロセスに対してシグナルが送信される。
コマンドの使用例と解説
1.kill コマンドの使用例
このコマンドは、PIDが1234のプロセスに対して強制終了のシグナル(SIGKILL)を送信します。
$ kill -9 1234
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
3.killall コマンドの使用例
このコマンドは、プロセス名が firefox の全てのプロセスに対して終了要求のシグナル(SIGTERM)を送信します。
$ killall -SIGTERM firefox
これらのコマンドを使用すると、特定のプロセスやプロセスグループを終了させることができます。ただし、kill -9
のように強制終了シグナルを使用する場合は、プロセスが正常に終了できない場合にデータ損失や問題が発生する可能性があるので注意が必要です。