Taskkill 命令详解
“Tasklist” 命令是一个用来显示运行在本地或远程计算机上的所有进程的命令行工具,带有多个执行参数。
作用 :
结束一个或多个任务或进程。可以根据进程 ID 或图像名来结束进程。
语法格式:
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 显示一系列符合筛选器指定的进程。
<!-- [if !mso]> <style> v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <![endif]--><!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--><!-- [if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} </style> <![endif]-->
-eq, -ne: equal, not equal.
-gt, -lt: greater, less than.
-ge, -le: greater or equal, less than or equal.
/FO format 指定输出格式,有效值 : "TABLE" 、 "LIST" 、 "CSV" 。
/NH 指定栏标头不应该在输出中显示。
只对 "TABLE" 和 "CSV" 格式有效。
--------------------------------------
Tasklist 实战 :
1. 查看本机进程 ( 在一些特殊情况 , 比如任务管理器被禁用的时候 , 特别有效 )
运行 “cmd” ,在提示符窗口中输入: “tasklist” 命令,这样就显示本机的所有进程。本机的显示结果由五部分组成:图像名(进程名)、 PID 、会话名、会话#、内存使用。
2. 查看系统进程提供的服务
tasklist 命令不但可以查看系统进程,而且还可以查看每个进程提供的服务。
在命令提示符下输入: "tasklist /svc", 这样就列出了每个进程所调用的服务 , 怎么样 , 每个 svchost.exe 进程还正常吧 , 呵呵
3. 查看调用 DLL 模块文件的进程列表
例如,我们要查看本地系统中哪些进程调用了 “shell32.dll” DLL 模块文件。
tasklist /m shell32.dll
这时系统将显示调用了 shell32.dll 文件的所有进程列表。
4. 使用筛选器查找指定的进程
命令提示符下输入: TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running"
这样就列出了系统中正在运行的非 “SYSTEM“ 状态的所有进程。
更多 ................
tasklist /v /fi "PID gt 1000" /fo csv
tasklist /fi "USERNAME ne NT AUTHORITY\SYSTEM" /fi "STATUS eq running"
tasklist /v /fi "STATUS eq running"
tasklist /s srvmain /nh tasklist /s srvmain /svc /fi "Modules eq ntdll*"
tasklist /s srvmain /u maindom\hiropln /p p@ssW23 /nh
谈到 “Tasklist” 命令,我们就不得不提到 “taskkill” 命令,顾名思义,它是用来结束进程的。
Taskkill
结束一个或多个任务或进程。可以根据进程 ID 或图像名来结束进程。
语法: TASKKILL [/S system [/U username [/P [password]]]]
{ [/FI filter] [/PID processid | /IM imagename] } [/F] [/T]
参数
/s Computer
指定远程计算机名称或 IP 地址(不能使用反斜杠)。该默认值是本地计算机。
/u Domain\UserName
使用 UserName 或 Domain\UserName 指定的用户的帐户权限运行该命令。仅在指定 /s 后才能指定 /u 。默认值是当前登录发布命令的计算机的用户具有的权限。
/p Password
指定在 /u 参数中指定的用户帐户的密码。
/fi Filter
指定将要终止或不终止的进程的类型。可以指定多个筛选器。使用通配符 (*) 指定所有任务或图像名称。以下是有效的筛选器名称、运算符和值:
/pid ProcessID
指定将终止的进程的进程 ID 。
/im ImageName
指定将终止的进程的图像名称。使用通配符 (*) 指定所有图像名称。
/f
指定将强制终止的进程。对于远程进程可忽略此参数,所有远程进程都将被强制终止。
/t
终止指定的进程与该进程启动的任何子进程。
/?
在命令提示符下显示帮助。
注释
• 指定远程系统时,不支持 “WindowTitle” 和 “Status” 筛选器。
• 只有与筛选器一起指定时,通配符 (*) 才能被接受。
• 无论是否指定 /f 参数,都会始终强制执行对远程进程的终止操作。
• 向 HOSTNAME 筛选器提供计算机名将导致关机和中止所有进程。
• 使用 tasklist 确定要终止的进程的进程 ID (PID) 。
--------------------------------------
Taskkill 实战
1. 结束 spoolsv.exe 进程
taskkill -im qq.exe
taskkill -pid 3360
taskkill -pid 3360 /f
2. 结束一个进程的所有子进程
示例
下面的示例说明如何使用 taskkill 命令:
taskkill /pid 1230 /pid 1241 /pid 1253
taskkill /f /fi "USERNAME eq NT AUTHORITY\SYSTEM" /im notepad.exe
taskkill /s srvmain /f /im notepad.exe
taskkill /s srvmain /u maindom\hiropln /p p@ssW23 /fi "IMAGENAME eq note*" /im *
taskkill /s srvmain /u maindom\hiropln /fi "USERNAME ne NT*" /im *
taskkill /pid 2134 /t /fi "username eq administrator"
taskkill /f /fi "PID ge 1000" /im *