Windows 所有端口命令是什么?一文讲清楚端口查看、占用排查和常用命令
很多人第一次接触 Windows 端口时,都会有一个疑问:Windows 所有端口命令是什么?
其实这个问题要先分清楚一点:Windows 并没有一个“把所有端口一次性列出来”的单独命令,通常要结合“查看端口占用、查看监听端口、查看连接状态、结束占用进程”等多个命令一起用,才能完整排查。
如果你是电脑小白,先记住一句话:
端口是程序对外通信的“门牌号”,比如 80 端口常见于网页服务,443 端口常见于 HTTPS,3306 常见于 MySQL。
当某个软件打不开、服务器连不上、游戏端口冲突、网站启动失败时,先查端口,往往就能找到问题。
一、先搞懂:Windows 里的“端口”到底是什么
Windows 电脑上的端口,不是 USB 插口那种物理接口,而是网络通信里的逻辑编号。
每个程序想和网络通信,都会用到一个或多个端口。
常见场景有:
- 浏览器访问网页,占用 80 / 443 端口
- 微信、QQ、游戏客户端连接服务器,会用随机端口
- 本地装了数据库、网页服务、远程桌面,也会监听固定端口
- 某个端口被占用,会导致软件启动失败或服务冲突
所以我们常说的“查端口”,本质就是:
- 看哪些端口正在被监听
- 看某个端口被哪个程序占着
- 必要时结束这个程序或改端口
二、Windows 查看端口的常用命令
下面这些就是 Windows 里最常用的端口命令。
如果你只想先记最核心的,直接看这 4 个:
netstat -anonetstat -ano | findstr 端口号tasklist | findstr PIDtaskkill /F /PID PID号
三、最常用:netstat 查看所有端口
1)查看当前所有网络连接和监听端口
打开 命令提示符 CMD 或 PowerShell,输入:
netstat -ano
这个命令会显示什么?
它会列出当前系统里的网络连接情况,包括:
- 本地地址
- 外部地址
- 连接状态
- 对应进程 PID
你会看到类似这样的结果:
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1234
TCP 127.0.0.1:3306 0.0.0.0:0 LISTENING 5678
TCP 192.168.1.5:5201 192.168.1.10:80 ESTABLISHED 4321
重点看哪几列?
LISTENING:这个端口正在监听,说明有程序在占用ESTABLISHED:这个端口已经建立连接- 最后一列
PID:进程编号,用来找是哪个程序占用了端口
四、按端口号精准查询
如果你只想查某一个端口,比如查 80 端口,就用:
netstat -ano | findstr :80
例子
查 3306 端口:
netstat -ano | findstr :3306
查 443 端口:
netstat -ano | findstr :443
这个命令适合什么场景?
- 网站启动失败,怀疑 80 端口被占
- MySQL 连不上,怀疑 3306 被占
- 远程桌面异常,排查 3389
- 游戏或软件提示端口冲突
五、根据 PID 找到是哪个程序占用端口
当你查到端口后,会得到一个 PID,比如 1234。
接着输入:
tasklist | findstr 1234
这样就能看到这个 PID 对应的程序名。
示例
如果 PID 是 1234:
tasklist | findstr 1234
可能返回:
chrome.exe 1234 Console 1 120,000 K
说明这个端口被 Chrome 占用了。
六、结束占用端口的程序
如果确认这个程序可以关闭,可以强制结束:
taskkill /F /PID 1234
参数说明
/F:强制结束/PID:指定进程号
注意
不要随便结束系统关键进程,比如:
svchost.exeSystemlsass.execsrss.exe
这些是系统核心进程,乱结束可能导致蓝屏、掉线、重启。
七、Windows 查看端口的其他常用命令
除了 netstat,还有一些实用命令。
1)查看本机 IP 配置
ipconfig
如果想看更详细信息:
ipconfig /all
这个命令虽然不是查端口的,但排查端口问题时很常用,因为端口往往和本机 IP、网卡、网关有关。
2)查看当前路由和网络状态
route print
适合排查:
- 局域网访问异常
- 多网卡冲突
- VPN 导致的端口或路由异常
3)查看当前 DNS 缓存
ipconfig /displaydns
如果网页打不开、域名解析异常,也可以配合使用:
ipconfig /flushdns
4)PowerShell 查看 TCP 连接
PowerShell 里更直观的方式是:
Get-NetTCPConnection
如果只看监听端口:
Get-NetTCPConnection -State Listen
如果按端口筛选,比如 80 端口:
Get-NetTCPConnection -LocalPort 80
PowerShell 的好处是更适合做筛选和自动化,不过对新手来说,还是 netstat 最简单。
八、Windows “所有端口”相关命令汇总表
下面给你整理成一份最实用的清单,平时排查直接照着用。
| 作用 | 命令 |
|---|---|
| 查看所有连接和端口 | netstat -ano |
| 查看某个端口占用 | netstat -ano | findstr :端口号 |
| 根据 PID 查程序 | tasklist | findstr PID |
| 结束指定 PID 进程 | taskkill /F /PID PID号 |
| 查看 IP 配置 | ipconfig /all |
| 查看路由表 | route print |
| 查看 DNS 缓存 | ipconfig /displaydns |
| 清理 DNS 缓存 | ipconfig /flushdns |
| PowerShell 查看 TCP 连接 | Get-NetTCPConnection |
| PowerShell 查看监听端口 | Get-NetTCPConnection -State Listen |
九、一个完整的端口排查实战例子
假设你在电脑上装了网站程序,结果提示:
- 80 端口被占用
- 服务启动失败
- 页面打不开
这时候可以这样查:
第一步:查 80 端口
netstat -ano | findstr :80
如果返回:
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 2345
说明 80 端口正在被 PID 2345 占用。
第二步:查这个 PID 是什么程序
tasklist | findstr 2345
如果显示:
httpd.exe 2345 Console 1 25,000 K
说明是 Apache 占用了 80 端口。
第三步:处理方法
你可以选择:
- 关闭 Apache
- 修改网站程序端口
- 改成 8080、8888 等其他端口
十、常见端口号参考
虽然不是所有端口都要背,但这些常用端口建议记住:
- 20 / 21:FTP
- 22:SSH
- 23:Telnet
- 25:SMTP
- 53:DNS
- 80:HTTP
- 110:POP3
- 143:IMAP
- 443:HTTPS
- 3306:MySQL
- 3389:远程桌面
- 5432:PostgreSQL
- 6379:Redis
- 8080:常见备用 Web 端口
十一、新手最容易踩的坑
1)把“连接端口”和“监听端口”混淆
LISTENING:程序在等别人连进来ESTABLISHED:已经连上了
如果只是看服务是否启动,重点看 LISTENING。
2)看到端口被占就直接结束进程
这很危险。
先确认它是不是你正在使用的软件,比如:
- 浏览器
- 杀毒软件
- 微信
- 云盘同步工具
- 系统服务
不确定就先别结束。
3)只看端口号,不看 PID
同一个端口可能会出现多个状态,必须结合 PID 判断具体占用者。
4)命令窗口没管理员权限
有些系统级端口信息,普通权限看得不全。
建议:
- 开始菜单搜索
cmd - 右键
- 选择 以管理员身份运行
十二、图形界面也能看端口吗?
可以,但命令行更快、更准。
如果你不想敲命令,也能通过系统自带工具看:
任务管理器
- 右键任务栏,打开 任务管理器
- 切换到 详细信息
- 找到对应进程 PID
- 再结合
netstat -ano查询
资源监视器
- 打开任务管理器
- 切到 性能
- 点击下面的 打开资源监视器
- 在 网络 里查看正在使用网络的进程
不过要说实用性,还是命令行最强。
十三、如果你是服务器或开发用户,建议再掌握这几个命令
1)查看所有监听 TCP 端口
netstat -ano | findstr LISTENING
2)查看所有 UDP 端口
netstat -ano | findstr UDP
3)查看 3389 远程桌面端口
netstat -ano | findstr :3389
4)查看 8080 是否被占
netstat -ano | findstr :8080
5)通过 PowerShell 查看占用进程
Get-NetTCPConnection | Select-Object LocalAddress,LocalPort,State,OwningProcess
然后结合:
Get-Process -Id 进程号
即可精确定位。
十四、最实用的结论
如果你问的是 Windows 所有端口命令是什么,真正最核心的答案就是这几组:
netstat -ano
netstat -ano | findstr :端口号
tasklist | findstr PID
taskkill /F /PID PID号
再加上这些辅助命令:
ipconfig /all
route print
ipconfig /flushdns
Get-NetTCPConnection
十五、总结
Windows 并没有一个单独命令能“直接列出所有端口并告诉你是谁在用”,但通过 netstat + PID + tasklist + taskkill 这一套组合命令,基本就能完成 90% 的端口排查工作。
新手可以先记住这条最实用的流程:
netstat -ano | findstr :端口号- 找到 PID
tasklist | findstr PID- 确认程序
- 决定关闭、改端口还是保留
只要你掌握了这套方法,像端口占用、服务冲突、网站启动失败、远程桌面异常、数据库连接失败这类问题,都会好排查很多。

还没有评论,来说两句吧...