[日常运用]Windows中查看端口占用的简单方法及如何kill掉某进程的方法。

jackxiang 2007-11-7 10:29 | |
netstat -aon|findstr "端口号"查看端口是否被占用
C:\Users\Administrator>netstat -ano|findstr 80
  TCP    0.0.0.0:7680           0.0.0.0:0              LISTENING       3668
  TCP    0.0.0.0:8680           0.0.0.0:0              LISTENING       8552
  TCP    10.10.0.94:61717       47.102.197.26:80       ESTABLISHED     13932
  TCP    10.10.0.94:61720       116.128.171.192:8080   ESTABLISHED     8552
  TCP    10.10.0.94:61838       47.102.253.179:80      ESTABLISHED     13932
  TCP    10.10.0.94:62936       47.102.253.179:80      ESTABLISHED     13932
  TCP    10.10.0.94:62974       223.166.152.100:80     TIME_WAIT       0
  TCP    127.0.0.1:9080         0.0.0.0:0              LISTENING       13932
  TCP    [::]:7680              [::]:0                 LISTENING       3668
  UDP    [fe80::a564:aba:9613:90ce%14]:2177  *:*                                    9484
  UDP    [fe80::a564:aba:9613:90ce%14]:5353  *:*                                    3400
  UDP    [fe80::a8aa:4679:3642:9444%18]:2177  *:*                                    9484


今天在安装Apache的时候,最后显示80端口被占用,安装无法完成,我机器上没有装IIS,仔细想想也没有什么其他占用80端口的软件,最后google了一下,用下面的方法居然查出是被迅雷占用,退出迅雷,成功安装Apache,只是不明白迅雷为什么要用80端口。
netstat --help
  -a            显示所有连接和侦听端口。
  -n            以数字形式显示地址和端口号。
  -o          显示拥有的与每个连接关联的进程 ID。
————————————————————————————————————————————————
用这个命令,在DOS窗口执行:netstat -ano
看看占用0.0.0:80端口的PID是多少
然后在“任务管理器”中查到与该PID对应的程序。
如果任务管理器的进程页中看不到PID栏,则在任务管理器的菜单 查看--选择列中选择一下PID(进程标识符)就可以了。

点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片




————————————————————————————————————————————————
在windows命令行窗口下执行:
C:/>netstat -aon|findstr "4444"
TCP    127.0.0.1:4444         0.0.0.0:0              LISTENING       2434
由上面得知,端口被进程号为2434的进程占用,继续执行下面命令:
C:/>tasklist|findstr "2434"
javaw.exe                     2434 Console                 0     16,064 K
这样就可以很轻松的kill掉javaw.exe 来腾出4444端口

WINXP下杀死进程的一个DOS命令 ntsd
杀进程,关键是找到这个进程的启动方式,不然下次重启它又出来了。其实用Windows自带的工具就能杀大部分进程:
c:/>ntsd -c q -p PID
只有System、SMSS.EXE和CSRSS.EXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。ntsd 从2000开始就是系统自带的用户态调试工具。被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得了debug权限,从而能杀掉大部分的进程。ntsd会新开一个调试窗口,本来在纯命令行下无法控制,但如果只是简单的命令,比如退出(q),用 -c参数从命令行传递就行了。
开个cmd.exe窗口,输入:
ntsd -c q -p PID
把最后那个PID,改成你要终止的进程的ID。如果你不知道进程的ID,任务管理器->进程选项卡->查看->选择列->勾上"PID(进程标识符)",然后就能看见了。

来自:http://blog.csdn.net/kbeanwu/article/details/5779365

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/735/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2021-2-3 22:30
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]