kill – プロセスにシグナルを送るコマンド

制御(停止・再開・終了)
スポンサーリンク

kill コマンドは、指定した プロセスにシグナルを送信 するためのコマンドです。
代表的にはプロセスを終了させる(SIGTERM, SIGKILL)用途で使われますが、終了以外にも一時停止や再開などの制御も可能です。

構文(Syntax)

kill [オプション] PID...
kill -s SIGNAL PID...
kill -SIGNAL PID...

主なオプション・シグナル一覧

オプション/シグナル説明使用例
(なし) = -15デフォルトで SIGTERM を送信(通常終了要求)kill 1234
-9 / -SIGKILL強制終了kill -9 1234
-1 / -SIGHUPプロセスを再起動(多くのデーモンが設定再読み込み)kill -1 1234
-2 / -SIGINTCtrl+C と同じ割り込みkill -2 1234
-STOPプロセスを一時停止kill -STOP 1234
-CONT停止中のプロセスを再開kill -CONT 1234
-l利用可能なシグナル一覧を表示kill -l

実行例

通常終了(SIGTERM)

kill 1234

(PID 1234 のプロセスに終了要求を送信)

強制終了(SIGKILL)

kill -9 1234

デーモンに設定再読み込みを要求

kill -HUP 5678

複数のプロセスを終了

kill 1234 5678 91011

シグナル一覧を表示

kill -l

出力例:

 1) SIGHUP  2) SIGINT  3) SIGQUIT  9) SIGKILL  15) SIGTERM ...

プロセスを一時停止

kill -STOP 1234

停止したプロセスを再開

kill -CONT 1234

エラー例(存在しないPID)

kill 99999

出力例:

bash: kill: (99999) - No such process

関連コマンド

  • ps : 実行中のプロセスを確認
  • top / htop : 動的にプロセスを監視
  • pkill : プロセス名を指定して終了
  • killall : プロセス名で複数のプロセスをまとめて終了

備考

  • SIGTERM(15)がデフォルトで送信されるが、アプリによっては無視される場合がある。
  • SIGKILL(9)は強制終了であり、プロセスは後処理を実行できないため注意が必要。
  • kill は「プロセスを殺す」コマンドというよりも「シグナルを送る」コマンド。終了以外の用途も多い。

参考

スポンサーリンク
Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント