Windows 查看端口占用并强制关闭进程(超详细教程)

在前端/后端开发中,经常遇到 端口被占用、启动项目报错“address already in use” 的问题。
本文教你在 Windows 10/11 下,用命令行一键 查看端口占用 → 找到进程 → 关闭进程。


一、核心思路(3 步搞定)

  1. 知道你要查的端口(如 3000、8080、5173)
  2. 用命令查出 占用该端口的进程 PID
  3. 根据 PID 杀死进程,释放端口

二、打开命令行工具

任选一种:

  • Win + R → 输入 cmd 回车
  • 或在 VS Code / PowerShell 里直接执行

三、查看端口被谁占用(关键命令)

1. 查看所有端口占用

netstat -ano

参数说明:

  • a:显示所有连接和监听端口
  • n:以IP/端口数字形式显示(不解析域名)
  • o:显示进程 PID(最重要)

2. 精确查找某一端口(推荐)

把 端口号 换成你要查的,例如 5173、8080、3000:

netstat -ano | findstr :端口号

示例(查 5173 端口):

netstat -ano | findstr :5173

返回结果类似:

TCP    0.0.0.0:5173           0.0.0.0:0              LISTENING       12340

最后一列的 12340 就是 PID。


四、根据 PID 关闭进程(释放端口)

方法1:强制杀死进程(最常用)

taskkill /F /PID 你的PID

示例:

taskkill /F /PID 12340

参数:

  • /F:强制关闭
  • /PID:指定进程ID

方法2:根据进程名关闭(可选)

如果你知道是哪个程序占用(如 node.exe):

taskkill /F /IM node.exe

五、完整实战演示(一步不差)

假设你要释放 5173 端口:

  1. 查端口占用
netstat -ano | findstr :5173
  1. 拿到 PID(例如 12340)
  2. 关闭进程
taskkill /F /PID 12340
  1. 验证端口是否释放
    再执行一次查看命令,无结果即释放成功。

六、PowerShell 版命令(更现代)

如果你用的是 PowerShell:

查看端口占用

Get-Process -Id (Get-NetTCPConnection -LocalPort 5173).OwningProcess

关闭进程

Stop-Process -Id 12340 -Force

七、常见问题

1. 提示“拒绝访问”

  • 以管理员身份打开 cmd/PowerShell 再执行

2. 查不到端口

  • 端口没被占用
  • 端口写错

3. 前端开发最常被占用的端口

  • Vite:5173
  • Vue/React 开发:3000、8080
  • 后端服务:8000、8888、9090

八、总结(收藏这 2 条就够)

# 1. 查端口占用
netstat -ano | findstr :端口号

# 2. 关闭进程
taskkill /F /PID PID号

以后遇到 端口占用,直接复制这两条命令,秒解决!


Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐