电脑用着用着突然打不开网页,或者启动开发服务时报错“端口已被占用”,这时候别急着重启。很多情况下,是某个程序偷偷占了你需要的端口。学会用命令行查看端口占用,几分钟就能找到“罪魁祸首”。
Windows 上怎么查
打开“命令提示符”或者 PowerShell,输入下面这条命令:
netstat -ano | findstr :端口号
比如你想查 3000 端口有没有被占用,就写:
netstat -ano | findstr :3000
返回结果里会有一行或多行数据,最后一列是 PID(进程 ID)。记下这个数字,再打开任务管理器,切换到“详细信息”标签页,找到对应的 PID,就能知道是哪个程序在作怪。
macOS 和 Linux 查法更简单
打开终端,直接用 lsof 命令:
lsof -i :端口号
比如查 8080 端口:
lsof -i :8080
回车之后,系统会列出所有占用该端口的进程,包括进程名、PID、用户和连接状态。想结束它?复制 PID,接着输入:
kill -9 PID
把后面的 PID 换成实际数字就行。
小技巧:不知道端口,只想看活跃的
有时候你只是想知道当前有哪些端口正在被使用,可以运行:
netstat -tuln
这条命令在 macOS 和 Linux 上都能用,会列出所有监听中的网络连接,一眼看清哪些服务开着。
家里跑着 NAS,或者经常本地调试网站、启动 Node.js 服务的人,这条技能特别实用。不用装第三方工具,系统自带命令就能搞定。下次遇到端口冲突,先别关软件重来,打开命令行查一查,省时又省心。