コマンドプロンプトで"重い"プロセスを終了させる方法
使う場面
殆どのアプリが起動できないくらい重いときに使えます。
私が実行した環境はWindows10です。
手順
下記、実際の手順例です。
その後、その手順で使ったコマンドについて軽く説明します。
例
- 管理者権限でコマンドプロンプトを起動する
- 次のコマンドを実行する
tasklist /fi "memusage gt 1000000"
- 終了したいプロセスのPIDをメモする
- 次のコマンドを実行する
taskkill /f /pid 1234
(ただし、メモしたPIDが1234だったとする)
説明
手順2. tasklist
手順2で使いました。
次のコマンドを実行する
tasklist /fi "memusage gt 1000000"
コマンドの意味は大体こんなイメージです。
メモリ使用量が1GB以上のプロセス一覧を表示する
tasklistは実行中のプロセス一覧を表示するコマンドです。
今回はオプションとして、フィルタ(/fi
)を使いました。
なぜなら、フィルタを使わなければ、出力のテキストが長くなりどのプロセスを終了させるか迷うからです。
今回用いたフィルタの内容(memusage gt 1000000
)を日本語で書くと、大体こんな感じです。
メモリ使用量が1GB以上
フィルターに用いている各単語の意味は下記の通りです。
memusage : メモリ使用量(memory usage)
A gt B : AがB以上(greater than)
1000000 : 1,000,000キロバイト(=1ギガバイト)
以上のようにして、手順2ではメモリ使用量が1GB以上のプロセス一覧を表示する
コマンドを実行しました。
なお、1GB以上とした理由は特にありません。
なので、自分が使っている環境に合わせて自由に指定するのが良いと思います。
例えば、2GB(2000000kb)以上でも、10GB(10000000kb)以上でも良いです。
e.g. 2GB以上のプロセス一覧を表示する : tasklist /fi "memusage gt 2000000"
手順4. taskkill
手順4で使いました。
次のコマンドを実行する
taskkill /f /pid 1234
コマンドの意味は大体このようなイメージです。
IDが1234であるプロセスを、強制終了する
taskkillはプロセスを終了するコマンドです。
今回はオプションとして、下記の二つを使いました。
- /f : 強制終了
- /pid : PID(プロセスのID)を指定
強制終了オプションを付けた理由は、もしオプションを付けなかった場合に、「閉じる」ボタンを押しても応答がないプロセスなどを終了できないことがあるからです。
また、PID指定オプションを付けると、指定したプロセスIDを持つプロセスを終了することができます。
今回は1234としました。
ただし実際の場面では、tasklistで一覧表示したときにプロセス名などを手掛かりにして、終了したいプロセスを自分で見つけ、そのPIDを指定します。
以上のようにして、手順4ではIDが1234であるプロセスを、強制終了する
コマンドを実行しました。
トラブルシューティング
例えば下記のようなエラーが出たら、最初に説明した手順1を飛ばしているのかもしれません(手順1:コマンドプロンプトを管理者権限で実行する)。
エラー: PID 11788 のプロセスを強制終了できませんでした。
理由: アクセスが拒否されました。
管理者権限で起動するには、今エラーメッセージが表示されているコマンドプロンプトを閉じずに、タスクバー上のコマンドプロンプトのアイコンをCtrlキーとShiftキーを押しながら右クリックします。
参考文献
コマンドプロンプトで下記のヘルプコマンドを実行して、それを参考にしました。
help
tasklist /?
taskkill /?
あとがき
パソコンが重いとき以外にも使う癖が身に付けば、タスクマネージャを開いてプロセス終了するよりよほど楽です。