【Windows】taskkillコマンドによるタスクの強制終了

【Windows】taskkillコマンドによるタスクの強制終了 ツール

「WindowsでタスクをプロセスID指定で終了させたい」
「Windowsにおいて、Linuxのkillコマンドのようなモノはないの?」

このような場合には、taskkillがオススメです。
この記事では、taskkillについて解説しています。

本記事の内容

  • taskkill とは?
  • taskkillの使い方

それでは、上記に沿って解説していきます。

taskkillとは?

taskkillは、Windowsで使用できるコマンドです。
UNIX系OSのkillコマンドに相当します。

タスクマネージャーでは、プロセスを選んで「タスクの終了」ができます。
同じことをコマンドで実行できるのが、taskkillだということです。

タスクの終了

taskkill

タスクマネージャー上の「タスクの終了」でも、やりたいことは大体できます。
しかし、プロセスID指定でタスクを終了させたい場合があります。

例えば、次のようなエラーが出た場合です。
次の画面は、CUDA Toolkitのインストール最中に出たエラーです。
警告と言った方がいいのかもしれません。

プロセスIDが17428が邪魔で、CUDA Toolkitのインストールができないと言われています。
この場合、17428のプロセスIDを持つタスクを終了させる必要があります。

頑張れば、タスクマネージャーでも「タスクの終了」が可能でしょう。
でも、プロセスIDが判明しているなら、頑張らずにタスクを終了できます。

その際に役に立つのが、taskkillということです。

以上、taskkillについて説明しました。
次は、taskkillの使い方を説明します。

taskkillの使い方

taskkill | Microsoft Docs
https://docs.microsoft.com/ja-jp/windows-server/administration/windows-commands/taskkill

taskkill の使い方は、上記ページで詳細を確認できます。
しかし、上記ページは情報過多と言えます。

上記でも述べましたが、基本的にはタスクマネージャーの「タスクの終了」で対応できます。
プロセスID(PID)が判明している場合に、taskkillが効果的になります。

次のようなケースですね。

ただし、本当にプロセスID17428が該当するタスクなのかどうかが不安です。
それを調べるには、tasklistを利用します。

今回の状況であれば、次のように「17428」を確認できました。

C:\>tasklist  
イメージ名                     PID セッション名     セッション# メモリ使用量  
========================= ======== ================ =========== ============  
System Idle Process              0 Services                   0          8 K  
System                           4 Services                   0      1,464 K  
Registry                       172 Services                   0     91,112 K 
~ 
devenv.exe                   17428 Console                    1    106,384 K 
~

「devenv.exe」は、Microsoft Visual Studioに含まれています。
したがって、「17428」をkillしても問題ないと確認できました。

プロセスID指定でタスクを終了させるには、次のコマンドを用います。

taskkill /pid 任意のPID /F

「/F」に関しては、あってもなくてもというレベルです。
実際にコマンドプロンプトで実行した結果は、以下。

C:\>taskkill /pid 17428 /F  
成功: PID 17428 のプロセスは強制終了されました。

これで無事に対象のタスクをkillすることができました。
なお、CUDA Toolkitのインストール処理を先に進めることができました。

以上、taskkillの使い方を説明しました。

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