DOS下杀进程

Windows平台

查看哪些进程在占用端口
在windows命令行窗口下执行:
C:\>netstat -aon|findstr "21"
TCP  192.168.0.110:2933   203.218.28.244:8370   FIN_WAIT_1     3008

端口被进程号为3008的进程占用,继续执行下面命令:

C:\>tasklist|findstr "3008"
Thunder5.exe              3008 Console                 0     29,384 K

迅雷占用该端口

杀掉该进程
C:\>taskkill /PID 3008 /F (其中,F参数为强制性关闭。)

注:有时候会提示
注:有时会出现提示错误:找不到进程“****”,重新输入 tasklist 命令,取得最新PID值

 

 

杀进程很容易,随便找个工具都行。比如IceSword。关键是找到这个进程的启动方式,不然下次重启它又出来了。顺便教大家一招狠的。其实用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(进程标识符)",然后就能看见了。

你可能感兴趣的:(C++,c,windows,C#,dos)