tasklist - プロセス一覧の表示
パソコンが重い、メモリを大量に消費しているプロセスを特定したい、特定のアプリケーションが起動しているか確認したい――そんな時に便利なのがtasklist
コマンドです。
tasklist
コマンドを使用すると、現在実行中のすべてのプロセス(タスク)の詳細情報をコマンドプロンプトから確認できます。
この記事では、tasklist
コマンドの基本的な使い方から、フィルタリングや出力形式の指定方法まで詳しく解説します。
tasklist コマンドとは
tasklist
コマンドは、ローカルコンピュータまたはリモートコンピュータで現在実行中のプロセスの一覧を表示するコマンドです。
タスクマネージャーをコマンドラインから操作するようなイメージで、以下のような情報を確認できます:
- イメージ名: 実行中のプログラムの名前(例: chrome.exe、notepad.exe)
- PID(プロセス ID): プロセスを識別する一意の番号
- セッション名: プロセスが実行されているセッション
- メモリ使用量: プロセスが使用しているメモリの量
- サービス情報: プロセスが実行しているサービス
バッチファイルでプロセスの監視やトラブルシューティングを自動化する際に非常に便利なコマンドです。
基本的な使い方
tasklist
コマンドの基本的な構文は以下の通りです。
tasklist [/S システム] [/U ユーザー名] [/P パスワード] [/M モジュール | /SVC | /V] [/FO 形式] [/NH] [/FI フィルター]
最も基本的な使い方は、オプションなしでtasklist
コマンドを実行することです。

イメージ名 PID セッション名 セッション# メモリ使用
System Idle Process 0 Services 0 8 K
System 4 Services 0 140 K
smss.exe 320 Services 0 1,112 K
csrss.exe 428 Services 0 4,684 K
explorer.exe 2,344 Console 1 95,248 K
chrome.exe 3,456 Console 1 523,456 K
notepad.exe 5,678 Console 1 3,124 K
このように実行すると、現在実行中のすべてのプロセスが表で表示されます。
PID(プロセスID)は、各プロセスに割り当てられる一意の識別番号です。 特定のプロセスを終了させる際などに、このPIDを使用します。
tasklist コマンドのオプション
tasklist
コマンドには、表示内容を詳細化したり、出力形式を変更したりするオプションがあります。
オプション | 説明 |
---|---|
/V | 詳細情報を表示します(ステータス、ウィンドウタイトルなど) |
/SVC | 各プロセスでホストされているサービスを表示します |
/M | 指定した DLL モジュールを読み込んでいるプロセスを表示します |
/FO | 出力形式を指定します(TABLE、LIST、CSV) |
/NH | 列ヘッダーを非表示にします |
/FI | フィルターを指定して、表示するプロセスを絞り込みます |
/S | リモートコンピュータを指定します |
/U | コマンドを実行するユーザー名を指定します |
/P | ユーザーアカウントのパスワードを指定します |
/V
オプション - 詳細情報の表示
/V
オプションを使用すると、より詳細な情報が表示されます。

イメージ名 PID セッション名 セッション# メモリ使用 状態 ユーザー名 CPU 時間 ウィンドウ タイトル
============ ==== ========== ========= ========== =============== ============== ========
explorer.exe 2344 Console 1 95,248 K 実行中 USER\user 0:02:15 N/A
chrome.exe 3456 Console 1 523,456 K 実行中 USER\user 0:15:42 Google Chrome
notepad.exe 5678 Console 1 3,124 K 実行中 USER\user 0:00:03 *無題 - メモ帳
状態、ユーザー名、CPU 時間、ウィンドウタイトルなどの追加情報が表示されます。
/V
オプションを使用すると、応答なしのプロセスを特定したり、
長時間実行されているプロセスを見つけたりするのが簡単になります。
/SVC
オプション - サービス情報の表示
/SVC
オプションを使用すると、各プロセスが実行しているサービスの情報が表示されます。

イメージ名 PID サービス
svchost.exe 1,024 DcomLaunch, PlugPlay, Power
svchost.exe 1,156 RpcEptMapper, RpcSs
svchost.exe 1,284 Dhcp, EventLog, lmhosts, TimeBrokerSvc
Windows サービスのトラブルシューティングに役立ちます。
/FO
オプション - 出力形式の指定
出力形式をTABLE
(表形式)、LIST
(リスト形式)、CSV
(カンマ区切り)から選択できます。
CSV 形式での出力

CSV形式で出力すると、ExcelやPythonスクリプトなどで簡単にデータ分析ができます。 定期的にプロセス情報を記録して、メモリ使用量の推移を追跡するのにも便利です。
LIST 形式での出力

フィルター機能
/FI
オプションを使用すると、特定の条件に一致するプロセスのみを表示できます。
利用可能なフィルター
フィルター名 | 演算子 | 説明 |
---|---|---|
STATUS | eq, ne | プロセスの状態(RUNNING、NOT RESPONDING) |
IMAGENAME | eq, ne | イメージ名 |
PID | eq, ne, gt, lt, ge, le | プロセス ID |
SESSION | eq, ne, gt, lt, ge, le | セッション番号 |
SESSIONNAME | eq, ne | セッション名 |
CPUTIME | eq, ne, gt, lt, ge, le | CPU 時間 |
MEMUSAGE | eq, ne, gt, lt, ge, le | メモリ使用量(KB 単位) |
USERNAME | eq, ne | ユーザー名 |
SERVICES | eq, ne | サービス名 |
WINDOWTITLE | eq, ne | ウィンドウタイトル |
MODULES | eq, ne | DLL 名 |
演算子の種類
演算子 | 意味 |
---|---|
eq | 等しい |
ne | 等しくない |
gt | より大きい |
lt | より小さい |
ge | 以上 |
le | 以下 |
特定のプロセスを検索
特定の名前のプロセスのみを表示する例:

イメージ名 PID セッション名 セッション# メモリ使用
chrome.exe 3,456 Console 1 523,456 K
chrome.exe 3,789 Console 1 124,532 K
chrome.exe 3,890 Console 1 89,234 K
メモリ使用量でフィルタリング
100MB(100,000KB)以上のメモリを使用しているプロセスを表示する例:

イメージ名 PID セッション名 セッション# メモリ使用
chrome.exe 3,456 Console 1 523,456 K
chrome.exe 3,789 Console 1 124,532 K
フィルターで指定するメモリ使用量の単位はKB(キロバイト)です。
100MBを指定する場合は、100000
と入力してください。
プロセス ID でフィルタリング
プロセス ID が 1000 より大きいプロセスを表示する例:

複数のフィルターを組み合わせ
複数の/FI
オプションを使用して、より詳細な条件を指定できます。
実行中のプロセスで、メモリ使用量が 50MB 以上のものを表示する例:

応用例
CSV 形式でファイルに出力
プロセス情報を CSV 形式でファイルに保存する例:

これにより、processes.csv
ファイルにプロセス情報が保存されます。
応答なしのプロセスを検索
応答していないプロセスを確認する例:

このコマンドは、応答していないアプリケーションを素早く特定するのに便利です。
PIDを確認してから、taskkill
コマンドで強制終了できます。
特定のユーザーのプロセスを表示
特定のユーザーが実行しているプロセスを表示する例:

システムプロセス以外を表示
NT システムプロセス以外を表示する例:

定期的にプロセス情報を記録
バッチファイルで定期的にプロセス情報を記録する例:
@echo off
setlocal
REM_現在の日時を取得
set datetime=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%
set datetime=%datetime: =0%
REM_プロセス情報をファイルに保存
tasklist /V /FO CSV > "process_log_%datetime%.csv"
echo プロセス情報を保存しました: process_log_%datetime%.csv
endlocal
exit
まとめ
この記事では、tasklist
コマンドを使用した実行中のプロセスの確認方法について解説しました。
主なポイント:
tasklist
コマンドで現在実行中のすべてのプロセスを確認できる/V
オプションで詳細情報、/SVC
オプションでサービス情報を表示/FO
オプションで出力形式を変更できる(TABLE、LIST、CSV)/FI
オプションでフィルタリングして特定のプロセスのみを表示- メモリ使用量やプロセス ID でフィルタリング可能
- CSV 形式で出力してデータ分析に活用できる
tasklist
コマンドを活用することで、システムの状態を詳細に把握し、トラブルシューティングやパフォーマンス監視を効率的に行えます。
関連コマンド
プロセス管理に関連する情報については、以下も参照してください。
tasklist
でプロセスIDを確認した後、taskkill
コマンドを使用してプロセスを終了できます。 taskkill /PID プロセスID
またはtaskkill /IM イメージ名
の形式で使用します。