计算机技术论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

  • 欢迎访问 计算机技术论坛-电脑迷与初学者的家园!由于论坛管理严格,新注册会员可能遇到各种问题,无法解决的请发邮件 admin@jsjbbs.cn
查看: 2811|回复: 3

用Windows自带的工具就能杀大部分进程

[复制链接]
发表于 2009-3-5 16:12:06 | 显示全部楼层 |阅读模式
用Windows自带的工具就能杀大部分进程:
  c:\>ntsd -c q -p PID
  只有System、SMSS.EXE和CSRSS.EXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。ntsd从2000开始就是系统自带的用户态调试工具。被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得了debug权限,从而能杀掉大部分的进程。ntsd会新开一个调试窗口,本来在纯命令行下无法控制,但如果只是简单的命令,比如退出(q),用-c参数从命令行传递就行了。NtsdNtsd 按照惯例也向软件开发人员提供。只有系统开发人员使用此命令。有关详细信息,请参阅 NTSD 中所附的帮助文件。用法:开个cmd.exe窗口,输入:
  ntsd -c q -p PID
  把最后那个PID,改成你要终止的进程的ID。如果你不知道进程的ID,任务管理器-进程选项卡->查看->选择列->勾上"PID(进程标识符)",然后就能看见了。
  

xp下还有两个好东东tasklist和tskill。tasklist能列出所有的进程,和相应的信息。tskill能查杀进程,语法很简单:tskill 程序名!
tasklist和taskkill      是XP、2003等系统自带的cmd进程查看和结束进程工具,十分实用。
        首先我们看看tasklist的参数。
运行—cmd
输入tasklist /?就有详细的参数列表。我们一般只要用/svc这个参数就可以了。
tasklist /svc 是表示查看本地计算机的系统服务的进程。不带参数则表示显示所有本地计算机的进程
键入:tasklist    /s    ip地址 /u 用户名 /p 密码
回车即可显示远程计算机的进程
       现在我们来看taskkill的参数和用法。。这个命令参数比较多,我这里介绍下用/pid结束进程
这个参数我们要结合tasklist命令来用。
我们要结束哪个进程就输入:
taskkill     /pid     相对的pid号 回车即可
例:在列表中我们发现LSASS.EXE发PID为580。
我们就输入:taskkill       /pid       580      /f      回车即可       {/F参数是强制执行}
注:LSASS.EXE可是系统进程,结束了这个系统就要提示过1分钟后系统就要重启,所以大家可以试其他的进程。
实际上,taskkill 不但可以用pid方式结束进程,还可以用进程名(带.exe)的方式结束进程,譬如:
TASKKILL /F /IM svchost.exe 那么,就会关闭所有进程名为svchost.exe的进程,但是,要小心!由于你关闭了svchost.exe,所以系统会提示自动重启!此时你可以输入shutdown -a 来取消关机倒计时,大家可以试一试,整人效果特别好,呵呵。

Taskkill
结束一个或多个任务或进程。可以根据进程 ID 或图像名来结束进程。
语法
taskkill [/s Computer [/u Domain\UserName [/p Password]]] {[/fi Filter [/fi Filter [ ...]]] [{/pid ProcessID | /im ImageName}] | /pid ProcessID | /im ImageName} [/f] [/t]
参数
/s Computer
指定远程计算机名称或 IP 地址(不能使用反斜杠)。该默认值是本地计算机。
/u Domain\UserName
使用 UserName 或 Domain\UserName 指定的用户的帐户权限运行该命令。仅在指定 /s 后才能指定 /u。默认值是当前登录发布命令的计算机的用户具有的权限。
/p Password
指定在 /u 参数中指定的用户帐户的密码。
/fi Filter
指定将要终止或不终止的进程的类型。可以指定多个筛选器。使用通配符 (*) 指定所有任务或图像名称。以下是有效的筛选器名称、运算符和值:

名称 运算符 值
Status
eq, ne
RUNNING | NOT RESPONDING | UNKNOWN
Imagename
eq, ne
任何有效字符串。
PID
eg, ne, gt, lt, ge, le
任何有效的正整数。
Session
eg, ne, gt, lt, ge, le
任何有效的会话数。
CPUTime
eq, ne, gt, lt, ge, le
格式为 HH:MM:SS 的有效时间。MM 和 SS 参数应在 0 到 59 之间,HH 参数可以是任何一个有效的无符号数值。
Memusage
eg, ne, gt, lt, ge, le
任何有效的整数。
Username
eq, ne
任何有效的用户名 ([Domain\]UserName)。
Services
eq, ne
任何有效字符串。
Windowtitle
eq, ne
任何有效字符串。
Modules
eq, ne
任何有效字符串。

/pid ProcessID
指定将终止的进程的进程 ID。
/im ImageName
指定将终止的进程的图像名称。使用通配符 (*) 指定所有图像名称。
/f
指定将强制终止的进程。对于远程进程可忽略此参数,所有远程进程都将被强制终止。
/t
终止指定的进程与该进程启动的任何子进程。
/?
在命令提示符下显示帮助。
注释
? 指定远程系统时,不支持“WindowTitle”和“Status”筛选器。
? 只有与筛选器一起指定时,通配符 (*) 才能被接受。
? 无论是否指定 /f 参数,都会始终强制执行对远程进程的终止操作。
? 向 HOSTNAME 筛选器提供计算机名将导致关机和中止所有进程。
? 使用 tasklist 确定要终止的进程的进程 ID (PID)。
? Taskkill 替代了 Kill 工具。

示例
下面的示例说明如何使用 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 [email=p@ssW23]p@ssW23[/email] /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 *
       我们再看看结束远程计算机进程。
和tasklist类似。我们输入:taskkill       /s      ip地址 /u 用户名 /p 密码      /pid       相对的pid号      /f       回车即可
发表于 2009-3-6 04:10:23 | 显示全部楼层
第一个我常用,呵呵。。。
发表于 2009-3-6 09:44:10 | 显示全部楼层
不错,学习了,感谢LZ分享
plj20 该用户已被删除
发表于 2009-3-6 10:00:05 | 显示全部楼层
学习学习:)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

无图版|手机版|计算机技术论坛 JSJBBS.CN @ 2008-2024 ( 鲁ICP备17021708号 )

技术支持 : 北京康盛新创科技有限责任公司

快速回复 返回顶部 返回列表