命令提示符下查看进程
在Windows XP中使用“Ctrl+Alt+Del”组合键,进入“Windows 任务管理器”,在进程选项卡中可以查看本机完整的进程列表,而且可以通过手工定制进程列表的方式获得更多的进程信息,如会话ID、用户名等,但遗憾的是,我们查看不到这些进程到底提供了哪些系统服务。
其实,在Windows XP中新增的一个命令行工具“Tasklist.exe”就能实现上面的功能。Tasklist命令用来显示运行在本地或远程计算机上的所有进程,带有多个执行参数。使用格式:Tasklist[/S system[/U username[/P[password]]]][/M[module]| /SVC | /V][/FI filter [/FO format][/NH]参数含义
/S ystem 指定连接到的远程系统。
/U[omain]user 指定使用哪个用户执行这个命令。
/P[password]为指定的用户指定密码。
/M[module]列出调用指定的 DLL模块的所有进程。如果没有指定模块名,显示每个进程加载的所有模块。
/SVC显示每个进程中的服务。
/V 显示详细信息。
/FIfilter 显示一系列符合筛选器指定的进程。
/FOformat 指定输出格式,有效值:TABLE、LIST、CSV。
/NH指定输出中不显示栏目标题。只对 TABLE和CSV格式有效。
下面我们来看看Tasklist命令的应用实例。
1、查看本机进程
在“命令提示符”中输入Tasklist命令即可显示本机的所有进程。本机的显示结果由5部分组成:图像名(进程名)、PID、会话名、会话#和内存使用。
2、查看系统进程提供的服务
Tasklist命令不但可以查看系统进程,而且还可以查看每个进程提供的服务。如查看本机进程SVCHOST.EXE提供的服务,在命令提示符下输入“Tasklist /svc”命令即可。你会惊奇地发现,有4个SVCHOST.EXE
对于远程系统来说,查看系统服务也很简单,使用“Tasklist /s 218.22.123.26 /u jtdd /p 12345678 /svc”命令,就可以查看IP地址为218.22.123.26的远程系统进程所提供的服务。
3、查看调用DLL模块文件的进程列表
要查看本地系统中哪些进程调用了shell32.dll模块文件,只须在命令提示符下输入“Tasklist /m shell32.dll”即可显示这些进程的列表。
4、使用筛选器查找指定的进程
在命令提示符下输入“TASKLIST /FI ″USERNAME ne NT AUTHORITYSYSTEM″ /FI ″STATUS eq running”,就可以列出系统中正在运行的非SYSTEM状态的所有进程。其中“/FI”为筛选器参数,“ne”和“eq”为关系运算符“不相等”和“相等”。
强行杀进程:ntsd -q c -p PID