需确认Windows 10中端口占用进程时,可依次使用netstat -ano查PID、findstr筛选端口、tasklist查进程名、资源监视器图形化查看,或PowerShell的Get-NetTCPConnection直接获取进程信息。

如果您需要确认 Windows 10 系统中某个端口正被哪个进程占用,而该进程仅能通过其进程标识符(PID)识别,则必须借助系统内置命令提取端口与 PID 的映射关系。以下是实现此目标的多种方法:
一、使用 netstat -ano 列出全部端口及对应 PID
该命令强制以数字形式显示地址和端口,并输出每个连接或监听项所关联的进程 ID(PID),是获取端口占用全景视图的基础操作,无需额外工具,适用于所有标准 Win10 安装环境。
1、同时按下 Win + R 键,打开“运行”对话框。
2、输入 cmd 并按回车键,启动命令提示符窗口。
3、在命令提示符中输入命令:netstat -ano,然后按回车执行。
4、观察输出结果中的“本地地址”列(如 0.0.0.0:8080 或 [::]:443),冒号后即为端口号;最右侧“PID”列为该端口或连接所归属的进程唯一标识数字。
二、用 findstr 精准筛选指定端口的 PID 记录
当已知需检查的具体端口号(例如 3306、8080 或 5000)时,该方法可跳过人工浏览冗长列表,直接提取匹配行,避免误读其他字段(如 PID 数值本身含端口号),显著提升定位效率。
1、在已打开的命令提示符中,输入命令:netstat -aon | findstr ":8080"(将 8080 替换为目标端口,保留冒号)。
2、若无返回结果,尝试去掉冒号再次执行:netstat -aon | findstr "8080"(部分 Windows 版本对格式敏感)。
3、成功匹配后,从输出行末尾提取 PID 数值(例如 12345),该数值即为占用该端口的进程 ID。
三、通过 tasklist 查询 PID 对应的进程映像名称
获得 PID 后,必须将其映射至可识别的可执行文件名(如 java.exe、nginx.exe、svchost.exe),才能判断是否为预期服务、开发进程或异常程序,这是识别合法占用与潜在风险的关键环节。
1、在命令提示符中输入命令:tasklist | findstr "12345"(将 12345 替换为上一步查得的实际 PID,英文双引号不可省略)。
2、执行后返回结果的第一列为“映像名称”,例如 chrome.exe 或 sqlservr.exe。
3、若输出为空,说明该 PID 进程已退出但端口状态尚未刷新;可等待数秒后重试,或执行 netstat -ano 再次验证。
四、使用资源监视器图形化查看端口与 PID 关系
资源监视器提供免记忆命令、全字段可视化的界面,直接展示协议类型、完整进程路径、用户账户及网络吞吐量,适合不熟悉命令行或需交叉验证的用户快速确认端口归属及其 PID。
1、同时按下 Win + R 键,输入 resmon 并按回车,启动资源监视器。
2、点击顶部选项卡中的“网络”。
3、向下滚动至“监听端口”区域,此处按端口号排序列出所有处于 LISTENING 状态的端口。
4、每行包含端口、协议、进程名称、PID、路径等完整信息,可直接定位占用者。
五、使用 PowerShell(管理员权限)直接获取端口所属进程及 PID
PowerShell 提供更现代的网络管理 cmdlet,Get-NetTCPConnection 可绕过传统 PID 中转步骤,直接根据本地端口查询拥有该端口的进程 ID,并进一步获取完整进程对象,减少人为误差。
1、右键点击“开始”按钮,选择“Windows PowerShell(管理员)”以提升权限运行。
2、输入命令:Get-NetTCPConnection -LocalPort 8080 | Select-Object -ExpandProperty OwningProcess(将 8080 替换为目标端口)。
3、记下返回的 PID(例如 12345),再执行:Get-Process -Id 12345。
4、结果中 ProcessName 和 Path 字段即为占用端口的程序信息。










