登录
首页 >  文章 >  软件教程

Windows端口占用查看方法(netstat命令)

时间:2026-05-07 16:55:32 310浏览 收藏

推广推荐
前往下载Windows工具 ➜
支持 PC / 移动端,安全直达
本文详细介绍了在Windows系统中快速定位端口占用问题的实用方法,重点围绕内置命令netstat展开,涵盖以管理员身份运行CMD、使用netstat -ano查看端口与PID映射、通过tasklist精准识别进程名称、用findstr高效筛选特定端口,以及PowerShell中Get-NetTCPConnection等替代方案;无论你是开发调试时遇到端口冲突,还是运维排查服务启动失败,这套清晰、可操作的步骤都能帮你迅速揪出“抢”走端口的幕后程序,省时省力又可靠。

Windows如何查看端口是否被占用?(netstat命令)

如果您需要确认某个端口在Windows系统中是否已被其他进程占用,可以使用内置的netstat命令进行查询。以下是使用netstat命令查看端口占用情况的具体步骤:

一、以管理员身份运行命令提示符

netstat的部分功能(如显示占用端口的进程ID)需要提升权限才能正常执行,否则可能无法获取完整信息。

1、点击“开始”菜单,在搜索栏中输入“cmd”。

2、在搜索结果中右键单击“命令提示符”,选择以管理员身份运行

3、若弹出用户账户控制(UAC)提示,点击“是”继续。

二、使用netstat -ano列出所有监听端口及对应PID

该命令可显示当前所有活动的TCP和UDP连接、监听端口及其关联的进程ID(PID),是判断端口占用的基础操作。

1、在管理员命令提示符窗口中,输入以下命令并按回车:netstat -ano

2、等待命令执行完成,观察输出列表中的“Local Address”列,查找目标端口号(例如:3306、:8080等)。

3、记下该行末尾显示的PID值(进程标识符),用于后续定位具体进程。

三、通过PID查找对应进程名称

netstat仅显示PID,需结合tasklist命令将PID映射为可识别的进程名,从而明确哪个程序占用了端口。

1、在同一条命令提示符中,输入以下命令并替换“XXXX”为上一步查得的PID:tasklist /fi "pid eq XXXX"

2、按回车执行后,查看输出中的“Image Name”列,该列为占用端口的实际程序名称(如“chrome.exe”、“java.exe”)。

3、若输出显示“INFO: No tasks are running which match the specified criteria”,说明该PID已不存在,端口可能处于TIME_WAIT状态或已被释放。

四、筛选特定端口的占用情况

直接过滤目标端口可避免在大量netstat输出中人工查找,提高效率。

1、在管理员命令提示符中,输入以下命令(以端口8080为例):netstat -aon | findstr :8080

2、按回车后,仅显示包含“:8080”的行,包括监听(LISTENING)、已建立连接(ESTABLISHED)等状态。

3、检查输出行中“State”列是否为LISTENING,且“PID”列有非零数值,即可确认该端口正被占用。

五、使用PowerShell替代方案(无需管理员权限也可部分生效)

PowerShell提供Get-NetTCPConnection等cmdlet,可在不提升权限时获取部分端口监听信息,适用于受限环境。

1、打开PowerShell(无需管理员权限亦可运行基础查询)。

2、输入以下命令(以端口443为例):Get-NetTCPConnection -LocalPort 443 | Format-List

3、若返回对象,查看“OwningProcess”属性值即为PID;若提示“无法找到匹配项”,则该端口当前未被TCP监听。

4、如需进一步确认进程名,可将PID代入:Get-Process -Id XXXX | Select-Object ProcessName,Id

到这里,我们也就讲完了《Windows端口占用查看方法(netstat命令)》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>