0

0

MAC如何查看本地端口占用_MAC终端lsof命令查询方法【深度解析】

穿越時空

穿越時空

发布时间:2026-01-16 14:52:02

|

547人浏览过

|

来源于php中文网

原创

Mac端口被占用时,可用lsof精准查PID、netstat辅助验证、活动监视器图形化终止,并用curl/nc确认释放。

mac如何查看本地端口占用_mac终端lsof命令查询方法【深度解析】

如果您在Mac上启动服务时提示“端口已被占用”,则可能是某个后台进程正在监听该端口。以下是通过终端命令精准识别并处理本地端口占用的多种方法:

一、使用lsof命令精确查询指定端口占用

lsof(List Open Files)是macOS原生工具,将网络端口视为打开的文件进行管理,可直接输出占用目标端口的进程名称、PID、用户及协议类型,结果无需额外解析且具备高可靠性。

1、按下Command + 空格打开聚焦搜索,输入“终端”并回车启动。

2、在终端中输入命令:lsof -i :端口号,将“端口号”替换为实际需检查的数字(例如 3000)。

3、若需跳过DNS解析以提升响应速度并避免主机名混淆,使用增强参数:lsof -P -n -i :端口号

4、执行后,若端口被占用,输出中将包含COMMAND(程序名)、PID(进程ID)、USER(所属用户)、NAME(连接详情)四列;其中PID列数值即为进程唯一标识符

5、若命令无任何输出,则说明该端口当前未被任何进程监听。

二、使用lsof组合命令筛选监听状态进程

默认lsof -i :端口号可能显示ESTABLISHED等非监听连接,干扰判断;通过限定TCP监听状态可排除无关条目,仅保留真正绑定端口的服务进程。

1、在终端中输入:lsof -iTCP -sTCP:LISTEN | grep :端口号,将“端口号”替换为实际数字(如 8080)。

2、该命令仅输出处于LISTEN状态的TCP连接,确保返回结果均为实际占用端口的监听进程。

3、从输出中提取PID字段对应数值,用于后续终止操作。

三、使用netstat配合grep快速验证监听端口

netstat虽在新版macOS中功能受限,但仍可作为辅助手段快速确认端口是否处于监听状态,尤其适用于全局扫描或交叉验证场景。

1、在终端中运行:netstat -an | grep LISTEN,列出所有监听中的网络端口。

2、进一步过滤目标端口:netstat -an | grep LISTEN | grep :端口号,例如 netstat -an | grep LISTEN | grep :5000

Question AI
Question AI

一款基于大模型的免费的AI问答助手、总结器、AI搜索引擎

下载

3、观察输出中“Local Address”列是否出现类似127.0.0.1:端口号*:端口号的条目,若存在且状态为LISTEN,则表明端口正被占用。

四、通过活动监视器图形化定位并终止进程

对于不熟悉命令行操作的用户,活动监视器提供可视化界面,支持按端口号关键词搜索,并允许直接点击强制退出关联进程,降低误操作风险。

1、打开“启动台” → “其他” → 点击“活动监视器”。

2、点击顶部菜单栏的“查看” → 选择“所有进程”。

3、在右上角搜索框中输入:端口号(例如“:3001”),注意保留英文冒号。

4、在结果列表中找到匹配进程,选中后点击左上角红色“X”按钮。

5、在弹出窗口中勾选强制退出,然后点击“退出进程”。

五、使用curl与nc验证端口释放状态

终止进程后必须验证端口是否真正空闲,避免残留监听导致新服务无法绑定;curl适用于HTTP类端口,nc则覆盖所有TCP端口类型。

1、检查HTTP服务端口(如3000、8080):curl -I http://localhost:端口号

2、若返回curl: (7) Failed to connect to localhost port 端口号: Connection refused,表示端口已释放。

3、对非HTTP端口(如数据库5432、消息队列6379)使用:nc -zv localhost 端口号

4、若输出中包含Connection refused,即确认端口不再被监听。

相关专题

更多
curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

425

2023.06.14

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

174

2023.10.30

mysql标识符无效错误怎么解决
mysql标识符无效错误怎么解决

mysql标识符无效错误的解决办法:1、检查标识符是否被其他表或数据库使用;2、检查标识符是否包含特殊字符;3、使用引号包裹标识符;4、使用反引号包裹标识符;5、检查MySQL的配置文件等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

180

2023.12.04

Python标识符有哪些
Python标识符有哪些

Python标识符有变量标识符、函数标识符、类标识符、模块标识符、下划线开头的标识符、双下划线开头、双下划线结尾的标识符、整型标识符、浮点型标识符等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

278

2024.02.23

java标识符合集
java标识符合集

本专题整合了java标识符相关内容,想了解更多详细内容,请阅读下面的文章。

253

2025.06.11

c++标识符介绍
c++标识符介绍

本专题整合了c++标识符相关内容,阅读专题下面的文章了解更多详细内容。

121

2025.08.07

macOS怎么切换用户账户
macOS怎么切换用户账户

在 macOS 系统中,可通过多种方式切换用户账户。如点击苹果图标选择 “系统偏好设置”,打开 “用户与群组” 进行切换;或启用快速用户切换功能,通过菜单栏或控制中心的账户名称切换;还能使用快捷键 “Control+Command+Q” 锁定屏幕后切换。

331

2025.05.09

数据库三范式
数据库三范式

数据库三范式是一种设计规范,用于规范化关系型数据库中的数据结构,它通过消除冗余数据、提高数据库性能和数据一致性,提供了一种有效的数据库设计方法。本专题提供数据库三范式相关的文章、下载和课程。

345

2023.06.29

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

8

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Node.js 教程
Node.js 教程

共57课时 | 8.7万人学习

CSS3 教程
CSS3 教程

共18课时 | 4.6万人学习

Vue 教程
Vue 教程

共42课时 | 6.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号