実行中のプロセス一覧を表示するには、tasklistコマンドを利用します。
Linuxなどのpsコマンドに似ていますね。
尚、このtasklistコマンドはWindowsのバージョン&エディションによってはインストールされていません。(Windows XP Homeエディションなど)
以下にtasklistコマンドの使用例をいくつか紹介します。
以下のコマンドでtasklistのヘルプを表示しました。
使用例などが表示されます。
tasklist /?
C:\Users\sakura>tasklist /? TASKLIST [/S システム [/U ユーザー名 [/P [パスワード]]]] [/M [モジュール] | /SVC | /V] [/FI フィルター] [/FO 形式] [/NH] 説明: ローカルまたはリモートのシステムで実行されている プロセスの一覧を表示します。 パラメーター一覧: /S システム 接続するリモート システムを指定します。 /U [ドメイン\]ユーザー コマンドを実行するユーザー コンテキストを 指定します。 /P [パスワード] 提供されたユーザー コンテキストのパスワードを 指定します。省略された場合は、入力を要求します。 /M [モジュール] 指定された EXE/DLL 名を使用しているタスクを すべて表示します。モジュール名が指定されない場合 は、読み込まれているモジュールすべてを表示します。 /SVC 各プロセスをホストしているサービスを表示します。 /V 詳細なタスク情報を表示します。 /FI フィルター フィルターによって指定された、与えられた条件に一致 するタスクを表示します。 /FO 形式 出力の形式を指定します。 有効な値: "TABLE", "LIST", "CSV"。 /NH 出力するときに、"カラム ヘッダー"を 表示しないように指定します。 "TABLE" と "CSV" のみ有効です。 /? このヘルプ メッセージを表示します。 フィルター: フィルター名 有効な演算子 有効な値 ----------- --------------- -------------------------- STATUS eq, ne RUNNING | NOT RESPONDING | UNKNOWN IMAGENAME eq, ne イメージ名 PID eq, ne, gt, lt, ge, le PID 値 SESSION eq, ne, gt, lt, ge, le セッション番号 SESSIONNAME eq, ne セッション名 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 [ドメイン\]ユーザーの形式の 形式 SERVICES eq, ne サービス名 WINDOWTITLE eq, ne ウィンドウ タイトル MODULES eq, ne DLL 名 注意: リモート コンピューターを照会するときは、"WINDOWTITLE" フィルターと"STATUS" フィルターはサポートされません。 例: TASKLIST TASKLIST /M TASKLIST /V /FO CSV TASKLIST /SVC /FO LIST TASKLIST /M wbem* TASKLIST /S システム /FO LIST TASKLIST /S システム /U ドメイン\ユーザー名 /FO CSV /NH TASKLIST /S システム /U ユーザー名 /P パスワード /FO TABLE /NH TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running"上記は、tasklistコマンドに/?パラメーターを渡し実行し出力された結果です。
tasklistにパラメーターを何も指定しないと、ローカルマシンで動作しているプロセス一覧が出力されます。
C:\Users\sakura>tasklist イメージ名 PID セッション名 セッション# メモリ使用量 ========================= ======== ================ =========== ============ System Idle Process 0 Services 0 24 K System 4 Services 0 3,748 K smss.exe 316 Services 0 596 K csrss.exe 444 Services 0 3,292 K wininit.exe 500 Services 0 2,732 K csrss.exe 520 Console 1 49,428 K services.exe 564 Services 0 7,528 K winlogon.exe 588 Console 1 4,524 K lsass.exe 600 Services 0 10,048 K lsm.exe 608 Services 0 3,436 K svchost.exe 736 Services 0 6,532 K svchost.exe 812 Services 0 8,144 K MsMpEng.exe 868 Services 0 41,628 K <省略>
tasklist /m でプロセスにリンクしているDLLが表示されます。
以下の出力は、firefox, chromeが各種DLLとリンクしているのが確認できます。
C:\Users\sakura>tasklist /m イメージ名 PID モジュール ========================= ======== ============================================ System Idle Process 0 N/A System 4 N/A smss.exe 316 N/A csrss.exe 444 N/A <省略> firefox.exe 4480 ntdll.dll, wow64.dll, wow64win.dll, wow64cpu.dll <省略> chrome.exe 672 ntdll.dll, wow64.dll, wow64win.dll, wow64cpu.dll <省略>
tasklist /FO 出力形式により出力形式を指定できます。
CSV | CSV形式で出力 |
LIST | LIST形式で出力 |
TABLE | TABLE形式で出力 |
C:\Users\sakura>tasklist /fo csv "イメージ名","PID","セッション名","セッション#","メモリ使用量" "System Idle Process","0","Services","0","24 K" "System","4","Services","0","3,752 K" "smss.exe","316","Services","0","612 K" "csrss.exe","444","Services","0","3,404 K" "wininit.exe","500","Services","0","2,736 K" "csrss.exe","520","Console","1","47,672 K" "services.exe","564","Services","0","7,540 K" "winlogon.exe","588","Console","1","4,524 K" <省略>
C:\Users\sakura>tasklist /fo list イメージ名: System Idle Process PID: 0 セッション名: Services セッション#: 0 メモリ使用量: 24 K イメージ名: System PID: 4 セッション名: Services セッション#: 0 メモリ使用量: 3,752 K イメージ名: smss.exe PID: 316 セッション名: Services セッション#: 0 メモリ使用量: 612 K <省略>
C:\Users\sakura>tasklist /fo table イメージ名 PID セッション名 セッション# メモリ使用量 ========================= ======== ================ =========== ============ System Idle Process 0 Services 0 24 K System 4 Services 0 3,752 K smss.exe 316 Services 0 612 K csrss.exe 444 Services 0 3,408 K wininit.exe 500 Services 0 2,736 K csrss.exe 520 Console 1 47,672 K <省略>
パラメーター/svcでプロセスがサービスの場合、サービス名を表示します。
C:\Users\sakura>tasklist /svc イメージ名 PID サービス ========================= ======== ============================================ System Idle Process 0 N/A System 4 N/A smss.exe 316 N/A <省略> AppleMobileDeviceService. 1620 Apple Mobile Device mDNSResponder.exe 1760 Bonjour Service btwdins.exe 1784 btwdins ePowerSvc.exe 1844 ePowerSvc svchost.exe 1876 FDResPub, FontCache, SSDPSRV, upnphost GregHSRW.exe 1900 Greg_Service MDM.EXE 2004 MDM MWLService.exe 2040 MWLService RS_Service.exe 1312 RS_Service svchost.exe 1432 stisvc UpdaterService.exe 1560 Updater Service <省略> iTunesHelper.exe 448 N/A iPodService.exe 3716 iPod Service <省略>
tasklist /fi パラメータによりフィルタリングが可能になります。
以下にいくつかの例を記します。
フィルタリングの条件を imagename = svchost.exe にし実行した結果です。
C:\Users\sakura>tasklist /fi "imagename eq svchost.exe" イメージ名 PID セッション名 セッション# メモリ使用量 ========================= ======== ================ =========== ============ svchost.exe 736 Services 0 6,536 K svchost.exe 812 Services 0 8,184 K svchost.exe 984 Services 0 16,140 K svchost.exe 1016 Services 0 109,368 K svchost.exe 344 Services 0 41,752 K svchost.exe 944 Services 0 9,708 K svchost.exe 1112 Services 0 23,060 K svchost.exe 1524 Services 0 12,968 K svchost.exe 1876 Services 0 13,048 K svchost.exe 1432 Services 0 3,900 K svchost.exe 2264 Services 0 4,324 K svchost.exe 3324 Services 0 5,616 K
C:\Users\sakura>tasklist /fi "sessionname eq services" イメージ名 PID セッション名 セッション# メモリ使用量 ========================= ======== ================ =========== ============ System Idle Process 0 Services 0 24 K System 4 Services 0 3,768 K smss.exe 316 Services 0 612 K csrss.exe 444 Services 0 3,396 K wininit.exe 500 Services 0 2,736 K services.exe 564 Services 0 7,536 K
以上、tasklistの使用法について記述しました。