プロセス(タスク)の強制終了などを実現するtaskkillコマンド †taskkillコマンドを利用することにより、プロセスIDなどで終了および強制終了が可能になります。 関連記事 †taskkillのヘルプ †以下のコマンドでtaskkillのヘルプを表示することができます。 taskkill /? C:\>taskkill /? TASKKILL [/S システム [/U ユーザー名 [/P [パスワード]]]] { [/FI フィルタ] [/PID プロセスID | /IM イメージ名] } [/F] 説明: このコマンド ライン ツールは、複数のプロセスを終了するために使われます。 プロセス ID またはイメージ名を使って終了できます。 パラメータ一覧: /S システム 接続するリモート システムを指定します。 /U [ドメイン\]ユーザー コマンドが実行されるユーザー コンテキストを 指定します。 /P [パスワード] 提供されるユーザー コンテキストのパスワードを 指定します。省略された場合は、入力を要求します。 /F プロセスの強制終了を指定します。 /FI フィルタ フィルタによって指定された、与えられた条件に一致 するタスクを表示します。 /PID プロセスID 終了させるプロセスの PID を指定します。 /IM イメージ名 終了させるプロセスのイメージ名を指定します。 ワイルドカード '*' を使用してすべてのイメージ名を 指定できます。 /T ツリー削除: 指定したプロセスとそのプロセスが開始 したすべてのプロセスを削除します。 /? このヘルプまたは使用法を表示します。 フィルタ: フィルタ名 有効な演算子 有効な値 ----------- --------------- -------------- STATUS eq, ne RUNNING | NOT RESPONDING IMAGENAME eq, ne イメージ名 PID eq, ne, gt, lt, ge, le PID 値 SESSION eq, ne, gt, lt, ge, le セッション番号です。 CPUTIME eq, ne, gt, lt, ge, le 次の形式の CPU 時間 hh:mm:ss hh - 時間 mm - 分、ss - 秒 MEMUSAGE eq, ne, gt, lt, ge, le メモリ使用量 (KB) USERNAME eq, ne [ドメイン\]ユーザー の形式の ユーザー名です MODULES eq, ne DLL 名 SERVICES eq, ne サービス名 WINDOWTITLE eq, ne ウィンドウのタイトル 注意: /IM スイッチのワイルドカード '*' は、フィルタと使うときのみ有効に なります。 注意: リモート プロセスの終了は、/F オプションの指定したかどうか にかかわりなく強制的に実行されます。 例: TASKKILL /S system /F /IM notepad.exe /T TASKKILL /PID 1230 /PID 1241 /PID 1253 /T TASKKILL /F /IM notepad.exe /IM mspaint.exe TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*" TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe TASKKILL /S system /U domain\username /FI "USERNAME ne NT*" /IM * TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*" 関連記事 †プロセスIDによるプロセスの終了 †プロセスIDによるプロセス(タスク)の終了例を以下に記します。 メモ帳(notepad.exe)を起動したあと、taskkillコマンドでnotepad.exeのプロセスIDを確認します。 C:\>tasklist /fi "imagename eq notepad.exe" イメージ名 PID セッション名 セッション# メモリ使用量 ========================= ====== ================ ======== ============ notepad.exe 812 Console 0 6,112 K PIDの欄がプロセスIDになります。 C:\>taskkill /pid 812 成功: PID 812 のプロセスは強制終了されました。 コマンドプロンプトでは、上記のように強制終了と表示されましたが、メモ帳でなんらかの入力修正をし未保存だった場合は、ファイル保存を促すメッセージが表示されました。 プロセスIDによるプロセスの強制終了 †やりたいことは、上記の同様ですが終了ではなく強制終了の方法を以下に記します。 taskkill /pid プロセス番号 /f 実際にメモ帳(notepad.exe)を起動し実行してみます。 C:\>tasklist /fi "imagename eq notepad.exe" イメージ名 PID セッション名 セッション# メモリ使用量 ========================= ====== ================ ======== ============ notepad.exe 2184 Console 0 6,232 K C:\>taskkill /pid 2184 /f 成功: PID 2184 のプロセスは強制終了されました。 C:\>tasklist /fi "imagename eq notepad.exe" 情報: 指定された条件のタスクは実行されていません。 /Fオプションにより強制終了となります。 子プロセスも終了させる †/Tオプションにより指定したプロセスの子プロセスも終了させることができます。 taskkill /pid プロセス番号 /t プログラム名(イメージ名)で停止させる †/IMオプションにより指定したプログラム名(イメージ名)で終了させることができます。 C:\>tasklist /fi "imagename eq notepad.exe" イメージ名 PID セッション名 セッション# メモリ使用量 ========================= ====== ================ ======== ============ notepad.exe 2292 Console 0 6,280 K notepad.exe 1752 Console 0 6,216 K C:\>taskkill /im notepad.exe 成功: プロセス "notepad.exe" (PID 2292) は強制終了されました。 成功: プロセス "notepad.exe" (PID 1752) は強制終了されました。 C:\>tasklist /fi "imagename eq notepad.exe" 情報: 指定された条件のタスクは実行されていません。 構文としては、いかのようになります。 taskkill /im イメージ名 強制終了したい場合は/Tオプションを追加します。 taskkill /im イメージ名 /t FIオプションによるフィルタリング †tasklistコマンド同様、FIオプションによりフィルタリングすることができます。
以上、taskkillの使用方法をいくつか紹介しました。 |