killall wp コマンド情報まとめ
ターミナルの killall wp(killall)コマンドについて、基本的な使い方や便利なオプション、他のプロセス終了コマンドとの違い、AI エージェントが実行した場合の危険性を紹介しています。
目次
killallとは
killall は、指定したプロセス名に一致するすべてのプロセスにシグナル(デフォルトは SIGTERM)を送信し、一括で終了させるためのコマンドです。
プロセスID(PID)を個別に調べて指定する必要がないため、WordPressのCLI処理(wp コマンド)など、同じ名前で複数のプロセスが起動している場合に一括で処理を終了させる際に便利です。
オプション「-i, -I, -r, -s, -u, -w」の意味
| オプション | 意味 |
|---|---|
-i, --interactive | プロセスを終了する前に確認を求めます。 |
-I, --ignore-case | プロセス名の大文字と小文字を区別せずにマッチングします。 |
-r, --regexp | プロセス名を正規表現として解釈します。 |
-s, --signal | 送信するシグナルを指定します(例: -s KILL または -9)。 |
-u, --user | 指定したユーザーが所有するプロセスのみを対象にします。 |
-w, --wait | すべてのプロセスが終了するのを待ってからコマンドを終了します。 |
主要なオプションを組み合わせることで、特定のユーザーのプロセスだけを狙ったり、正規表現でまとめて終了させたりすることが可能です。
-i や -I などのオプションは、ハイフンに続けて指定します。
また、複数のオプションを組み合わせて指定することも可能です。
よく使う組み合わせ
プロセス名で一括終了する(基本)
killall wp
wp という名前のプロセスすべてに対して SIGTERM シグナルを送信し、安全に終了を試みます。
確認しながらプロセスを終了する
killall -i wp
wp プロセスを1つずつ確認メッセージ付きで終了します。誤って必要なプロセスを終了させるリスクを減らすことができます。
プロセスを強制終了する
killall -9 wp
応答しなくなった(フリーズした) wp プロセスに対して SIGKILL(シグナル9)を送信し、強制的に終了させます。
killall と kill・pkill の違い
プロセスの終了にはいくつかのコマンドが使われますが、それぞれ以下のような違いがあります。
| 項目 | killall wp | kill <PID> | pkill wp |
|---|---|---|---|
| 指定方法 | プロセス名(完全一致) | プロセスID(PID) | プロセス名(部分一致・正規表現) |
| 複数の一括終了 | 可能 | 個別指定のみ | 可能 |
| 誤爆リスク | 中(同名プロセスを全停止) | 低(PIDで1つに絞れる) | 高(部分一致で広い範囲に当たる) |
killall はプロセス名の完全一致が基本となるため、誤ったプロセスを部分一致で巻き添えにするリスクが pkill よりも低いです。
一方、個別の特定のプロセスのみを終了したい場合は kill でPIDを指定するのが安全です。
ユースケース
暴走した WP-CLI(wp)プロセスの緊急停止
WordPressのコマンドラインツールであるWP-CLI(wp コマンド)がバックグラウンド処理のバグやループ処理などでフリーズし、CPU負荷を高めてしまったりした際に、すべての wp プロセスを一括で終了させます。
特定ユーザーのプロセスを一括終了
killall -u testuser wp
ユーザー testuser が起動した wp プロセスのみをすべて終了させます。
他のユーザーやシステムが動かしているプロセスに影響を与えずにすみます。
使用時の注意点・危険性
killall は指定した名前に合致するすべてのプロセスを強制終了するため、意図しない同名プロセスが存在した場合にそれらも一緒に終了してしまいます。
特に root 権限で実行する場合、システムに必要な重要なプロセスを誤って終了させ、OS全体の動作が不安定になったりクラッシュしたりする危険性があります。
実行前に pgrep -l [プロセス名] などを用いて、どのプロセスが対象になるかを必ず確認することをおすすめします。
AIエージェントが実行しようとした場合
AIエージェントの目的
AIエージェントは主に次のような目的で killall wp を実行しようとすることがあります。
- ハングアップした WP-CLI コマンドやバックグラウンドプロセスを停止するため
- メモリ不足などのリソース枯渇時に、負荷の原因となっている特定のプログラムを一括終了するため
- テストスクリプトの実行後に、起動したWordPress関連のテストプロセスなどをクリーンアップするため
危険性
killall wp コマンドは、対象を誤ると影響が大きいため、AIエージェントが実行する際は対象の確認が必要です。
特にシステム全体の重要なサービスを一括で停止させてしまうと、予期せぬサービス停止やデータ破損につながる可能性があります。
実行前にプロセスのリストを確認し、安全な対象にのみ送信するよう制限する必要があります。