Tasklist命令用來顯示運行在本地或遠程計算機上的所有進程,帶有多個執行參數。
使用格式
Tasklist [/S system [/U username [/P [password]]]] [/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH]
參數含義
/S system 指定連接到的遠程系統。
/U [domain\]user 指定使用哪個用戶執行這個命令。
/P [password] 為指定的用戶指定密碼。
/M [module] 列出調用指定的DLL模塊的所有進程。如果沒有指定模塊名,顯示每個進程加載的所有模塊。
/SVC 顯示每個進程中的服務。
/V 顯示詳細信息。
/FI filter 顯示一系列符合篩選器指定的進程。
/FO format 指定輸出格式,有效值:TABLE、LIST、CSV。
/NH 指定輸出中不顯示欄目標題。只對TABLE和CSV格式有效。
應用實例。
1.查看本機進程
在“命令提示符”中輸入Tasklist命令即可顯示本機的所有進程(圖1)。本機的顯示結果由5部分組成:圖像名(進程名)、PID、會話名、會話#和內存使用。
2.查看遠程系統的進程
在命令提示符下輸入“Tasklist /s 218.22.123.26 /u jtdd /p 12345678”(不包括引號)即可查看到IP地址為218.22.123.26的遠程系統的進程(圖2)。其中/s參數後的“218.22.123.26”指要查看的遠程系統的IP地址,/u後的“jtdd”指Tasklist命令使用的用戶賬號,它必須是遠程系統上的一個合法賬號,/p後的“12345678”指jtdd賬號的密碼。
注意:使用Tasklist命令查看遠程系統的進程時,需要遠程機器的RPC服務的支持,否則,該命令不能正常使用。
3.查看系統進程提供的服務
Tasklist命令不但可以查看系統進程,而且還可以查看每個進程提供的服務。如查看本機進程SVCHOST.EXE提供的服務,在命令提示符下輸入“Tasklist /svc”命令即可(圖3)。你會驚奇地發現,有4個SVCHOST.EXE進程,而總共有二十幾項服務使用這個進程。
對於遠程系統來說,查看系統服務也很簡單,使用“Tasklist /s 218.22.123.26 /u jtdd /p 12345678 /svc”命令,就可以查看IP地址為218.22.123.26的遠程系統進程所提供的服務。
4.查看調用DLL模塊文件的進程列表
要查看本地系統中哪些進程調用了shell32.dll模塊文件,只需在命令提示符下輸入“Tasklist /m shell32.dll”即可顯示這些進程的列表。
5.使用篩選器查找指定的進程
在命令提示符下輸入“TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running”,就可以列出系統中正在運行的非SYSTEM狀態的所有進程。其中“/FI”為篩選器參數,“ne”和“eq”為關系運算符“不相等”和“相等”。
小提示
談到“Tasklist”命令,我們就不得不提到它的孿生兄弟“Taskkill”命令,顧名思義,它是用來關掉進程的。
要關掉本機的notepad.exe進程,有兩種方法:
1.先使用Tasklist查找它的PID,假設系統顯示本機notepad.exe進程的PID值為1132,然後運行“Taskkill /pid 1132”命令即可。其中“/pid”參數後面是要終止進程的PID值。
2.直接運行“Taskkill /IM notepad.exe”命令,其中“/IM”參數後面為進程的圖像名。