【Macユーザー向け】ターミナルでプロセスを終了する「killコマンド」完全ガイド

Mac

Macを使っていると、こんな経験はありませんか?

  • アプリがフリーズして動かなくなった
  • ターミナルで実行したプログラムが止まらない
  • 「強制終了」を試してもプロセスが残り続けている

そんなときに役立つのが killコマンド です。

「killって名前が物騒で怖い…」と思う方もいるかもしれませんが、正しく使えばMacの操作を格段に快適にしてくれる重要なコマンドです。

この記事では、killコマンドの基本的な使い方から応用テクニック、トラブル対処法まで、初心者の方にも分かりやすく解説します。

スポンサーリンク

killコマンドとは?

killコマンドは、指定したプロセス(実行中のプログラム)に終了の合図を送るコマンドです。

重要なポイントは、killコマンドは基本的に「強制終了」ではなく、「お疲れさまでした、終了してください」という丁寧なお願いを送ることです。

プロセスとは?

プロセスとは、コンピュータ上で実行されているプログラムの実行単位です。たとえば:

  • Safariブラウザ → 1つのプロセス
  • 音楽再生アプリ → 1つのプロセス
  • ターミナルで実行したスクリプト → 1つのプロセス

基本的な使い方

基本構文

kill [プロセスID]

例:

kill 12345

この場合、ID番号「12345」のプロセスに終了信号が送られます。

プロセスIDの調べ方

プロセスを終了するには、まずそのプロセスのID(PID: Process ID)を知る必要があります。

方法1: psコマンドを使う

ps aux | grep アプリ名

実例:Google Chromeのプロセスを探す場合

ps aux | grep Chrome

実行すると、このような結果が表示されます:

user    12345  2.1  5.4  Google Chrome Helper
user    12346  1.8  3.2  Google Chrome

左から2番目の数字(12345、12346)がプロセスIDです。

方法2: topコマンドでリアルタイム表示

top

topを実行すると、現在動作中のプロセス一覧がリアルタイムで表示されます。

目的のプロセスを見つけたら、qキーで終了し、そのPIDを使ってkillコマンドを実行します。

方法3: pgrepコマンドでプロセス名から検索

pgrep プロセス名

例:

pgrep Chrome

このコマンドは、該当するプロセスのIDのみを表示するため、シンプルで使いやすいです。

より強力な終了方法

通常のkillで終了しない場合:kill -9

通常のkillコマンドは「丁寧なお願い」ですが、どうしても終了しないプロセスには強制終了を指示できます。

kill -9 [プロセスID]

例:

kill -9 12345

注意点

  • 強制終了のため、保存されていないデータは失われる可能性があります
  • 通常のkillで解決できない場合の最後の手段として使用してください
  • システムプロセスに対して使用する際は十分注意が必要です

管理者権限が必要な場合

一部のプロセスは管理者権限がないと終了できません。その場合はsudoを付けます。

sudo kill [プロセスID]

または

sudo kill -9 [プロセスID]

便利な応用コマンド

pkill: プロセス名で直接終了

PIDを調べるのが面倒な場合は、pkillコマンドでプロセス名を指定して終了できます。

pkill プロセス名

例:

pkill Chrome

メリット:

  • PIDを調べる手間が省ける
  • 同名の複数プロセスを一括で終了できる

注意点:

  • 似た名前のプロセスも巻き込む可能性がある
  • 実行前にpgrepで対象プロセスを確認することを推奨

killall: より厳密なプロセス名指定

killall "正確なプロセス名"

例:

killall "Google Chrome"

pkillよりも正確なプロセス名の指定が必要ですが、誤った終了を防げます。

よくあるトラブルと対処法

Q1. killしてもプロセスが終わらない

対処法:

  1. kill -9で強制終了を試す
  2. 管理者権限で実行(sudo kill
  3. それでも終わらない場合はシステムプロセスの可能性があるため、再起動を検討

Q2. PIDがすぐに変わってしまう

対処法:

  • pgreppsコマンドを再実行して最新のPIDを確認
  • スクリプトを作成して自動化する(上級者向け)

Q3. 間違ったプロセスを終了してしまった

対処法:

  • 終了したアプリを再起動
  • 重要なシステムプロセスを終了した場合は再起動
  • 事前にpspgrepで対象プロセスを確認する習慣をつける

Q4. 「Permission denied」エラーが出る

対処法:

  • sudoを付けて管理者権限で実行
  • 自分が所有していないプロセスの可能性を確認

実践的な使用例

例1: フリーズしたSafariを終了

# 1. SafariのPIDを調べる
pgrep Safari

# 2. 結果:12345と表示された場合
kill 12345

# 3. 終了しない場合は強制終了
kill -9 12345

例2: 複数のChromeプロセスを一括終了

# 方法1: pkillを使用
pkill Chrome

# 方法2: killallを使用(より正確)
killall "Google Chrome"

例3: ターミナルで実行中のスクリプトを終了

実行中のターミナルで Ctrl + C を押しても止まらない場合:

# 1. 別のターミナルウィンドウを開く
# 2. プロセスを検索
ps aux | grep python  # Pythonスクリプトの場合

# 3. 該当するPIDを終了
kill [該当するPID]

まとめ

killコマンドは、Macのターミナルを使いこなす上で欠かせない重要なツールです。

フリーズしたアプリの終了や暴走したスクリプトの停止など、様々な場面で活躍します。

重要なポイント

  • kill [PID] でプロセスに終了信号を送る
  • ps auxtoppgrepでPIDを確認
  • kill -9 は強制終了(最後の手段として使用)
  • pkillkillallなら名前だけで終了可能
  • 管理者権限が必要な場合はsudoを使用

安全に使うためのコツ

  1. 終了前に必ず対象プロセスを確認する
  2. 通常のkillから試して、どうしても終わらない場合のみkill -9を使用
  3. システム関連のプロセスは慎重に扱う
  4. 重要な作業中のアプリは事前に保存してから終了する

ターミナルの操作に慣れることで、Macをより効率的に使いこなせるようになります。

コメント

タイトルとURLをコピーしました