首先通过netstat命令查看端口占用PID,再用tasklist或Get-Process查询对应进程名,也可通过资源监视器图形化查看,从而定位并解决端口冲突问题。

如果您在启动某个网络服务或应用程序时遇到失败,并提示端口已被使用,这通常意味着该端口号正被系统中的另一个进程占用。以下是几种在Windows 10系统中检查端口占用情况的有效方法。
本文运行环境:联想小新Pro 16,Windows 10 专业版
一、使用命令提示符与netstat命令
通过命令行工具结合netstat指令,可以列出所有活动的网络连接和监听端口,并获取占用端口的进程ID(PID),这是最基础且通用的排查方式。
1、按下Win + R组合键打开“运行”对话框,输入cmd后按回车键。
2、在命令提示符窗口中执行命令:netstat -ano,系统将显示所有当前的TCP连接、本地地址、外部地址及状态信息,最后一列为对应的进程ID。
3、若要查找特定端口(如8080)的占用情况,可执行命令:netstat -aon | findstr "8080",输出结果中会精确匹配包含8080的行,便于快速定位。
二、通过任务列表查询具体进程名称
在使用netstat查到占用端口的PID后,需进一步确定该PID对应的具体程序名称,以便进行后续处理。
1、复制上一步骤中查到的进程ID(例如PID为4528)。
2、在同一个命令提示符窗口中,输入命令:tasklist | findstr "4528",然后按回车。
3、系统将返回该PID对应的进程名称(如nginx.exe或java.exe),从而明确是哪个程序占用了目标端口。
三、利用资源监视器图形化查看
Windows自带的资源监视器提供了直观的图形界面,能够直接展示各进程所使用的网络端口,无需记忆命令。
1、按下Ctrl + Shift + Esc打开任务管理器,切换至“性能”选项卡,点击底部的“打开资源监视器”。
2、在资源监视器窗口中,选择“网络”标签页,向下滚动至“监听端口”区域。
3、在此列表中,您可以按“端口”或“进程”排序,清晰地看到每个正在监听的端口号及其关联的进程名称,方便快速识别占用者。
四、使用PowerShell高级命令查询
PowerShell提供了比传统命令更强大的网络连接查询功能,适用于需要精细筛选或自动化脚本的场景。
1、右键点击“开始”按钮,选择“Windows PowerShell(管理员)”或“终端(管理员)”。
2、输入命令:Get-NetTCPConnection -LocalPort 3306(以3306端口为例),可直接获取指定TCP端口的连接详情,包括所属进程ID。
3、结合Get-Process命令,可通过PID反查进程名,例如:Get-Process -Id 1234,将返回完整的进程信息。











