大家对“Windows任务管理器”都很熟悉。你可以通过使用“Ctrl Alt Del”组合键来访问它,但是大多数时候我们只是用它来结束这个过程。但是Windows XP中一个新的命令行工具‘task list . exe’可以实现很多你不知道的功能。
task命令用于显示本地或远程计算机上运行的所有进程,带有多个执行参数。使用格式:
Tasklist[/S系统[/U用户名[/P[密码]]]][/M[模块]| /SVC | /V][/FI过滤器?[/FO格式][/NH]
参数含义:
system指定要连接的远程系统。
/u[domain \]user指定使用哪个用户来执行此命令。
/p [password]指定指定用户的密码。
/m [module]列出调用指定DLL模块的所有进程。如果没有指定模块名,则显示每个进程加载的所有模块。
/SVC显示每个进程中的服务。
/V显示详细信息。
/FIfilter显示一系列符合筛选器规范的进程。
/FOformat指定输出格式。有效值为表格、列表和CSV。
/NH指定输出中不显示列标题。仅对表格和CSV格式有效。
我们来看看Tasklist命令的应用例子。
1.检查本机进程。
在“命令提示符”中输入Tasklist命令,显示这台机器的所有进程(图1)。该机器的显示结果由五部分组成:映像名称(进程名称)、PID、会话名称、会话号和内存使用情况。
2.检查远程系统的进程
在命令提示符下输入“任务列表/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提供的服务,只需在命令提示符下输入‘task list/SVC’命令(图3)。您会惊讶地发现有四个SVCHOST.EXE过程,总共有20多个服务使用这个过程。
4.检查调用DLL模块文件的进程列表。
要查看本地系统中哪些进程调用了shell32.dll模块文件,只需在命令提示符下输入“Tasklist /m shell32.dll”即可显示这些进程的列表。
5.使用过滤器查找指定的进程
在命令提示符下输入' task list/fi ' username ne nt authority \ SYSTEM '/fi ' status eq running '列出系统中运行的所有非系统状态的进程。其中“/FI”是过滤器参数,“ne”和“eq”是关系运算符“不等”和“相等”。