查找端口被占用的程序
2022年8月8日
没有评论
在运行程序,特别是开发阶段,有时候会碰到程序提示端口被占用的情况。有的时候,我们可以改变端口号,但是某些时候,端口号不能修改,只能去找到底是被什么程序占用的。
首先,以管理员权限运行下面的命令:
netstat -ano
可以显示所有获得网络连接活动的程序列表,如果想看特定的端口,也可以一步到位,例如查找 4200 端口,输入:
netstat -aon | findstr "4200"
界面输出的列表最后一列就是 PID 信息,这个 PID 就是使用该端口的程序进程。然后在任务管理器里根据 PID 找到具体的进程,接下来就是根据情况杀死这个进程就可以了。
但是,但是,别急。一般情况下没有问题,实际操作上会发现有的时候,查出来的 PID 是 4,也就是 System 进程,该进程无法被结束。
是不是感觉很沮丧。
在网上一番检索后,又找到了针对 System 进程进一步分析的方法。
接着在命令行里输入:
netsh http show servicestate
在输出结果里查找目标端口号,再根据上下文找到“请求队列名称”的值,这个值就是具体的进程,再根据这个队列名称,在上下文里找到进程 ID。
最后就可以在任务管理器里结束相关进程拉。