在开发或运维过程中,经常需要确认某个端口是否被占用,以及被哪个进程占用。Windows 提供了多种原生方式来查看端口占用情况。
1. 使用 netstat 命令(推荐)
打开命令提示符(CMD)或 PowerShell,输入以下命令:
netstat -ano | findstr :<端口号>
例如,查看 8080 端口占用情况:
netstat -ano | findstr :8080
输出示例:
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 12345
其中 12345 是占用该端口的进程 PID。
2. 根据 PID 查找进程名称
继续在命令行中执行:
tasklist | findstr 12345
即可看到进程名称,例如:
java.exe 12345 Console 1 123,456 K
3. 使用 PowerShell(更现代的方式)
在 PowerShell 中运行:
Get-NetTCPConnection -LocalPort 8080
可直接获取连接信息,包括 OwningProcess(即 PID)。
4. 使用资源监视器(图形界面)
- 按
Ctrl + Shift + Esc打开任务管理器。 - 切换到“性能”选项卡,点击底部的“打开资源监视器”。
- 在“网络”标签页中,展开“监听端口”,可搜索特定端口。
常见问题
- 权限不足? 请以管理员身份运行命令提示符或 PowerShell。
- 找不到端口? 确认端口是否正在被监听(如服务未启动则不会显示)。