0

0

MAC如何查看端口占用情况并关闭进程_MAC开发者必备技巧

冰火之心

冰火之心

发布时间:2026-01-12 14:37:49

|

146人浏览过

|

来源于php中文网

原创

macOS端口被占用时,可用lsof或netstat查PID,再用kill -9 PID终止进程;也可通过活动监视器图形化强制退出;ps与pgrep可辅助定位进程详情。

mac如何查看端口占用情况并关闭进程_mac开发者必备技巧

如果您在 macOS 上启动本地服务时提示“端口已被占用”,则可能是某个后台进程正在监听该端口。以下是定位并释放端口的具体操作步骤:

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

lsof(List Open Files)将网络端口视为特殊文件进行管理,可直接显示占用目标端口的进程名称、PID、用户及连接状态,是 macOS 下最常用且精准的端口排查工具

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

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

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

4、执行后,若端口被占用,将输出类似格式内容:COMMAND、PID、USER、NAME;其中 PID 列的数值即为进程唯一标识符

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

二、使用 netstat 配合 grep 过滤监听端口

netstat 可展示系统级网络连接与监听状态,适用于全局扫描或验证 lsof 结果,尤其在某些精简版系统环境中更稳定可靠。

1、在终端中输入以下命令,列出所有 TCP 协议下处于 LISTEN 状态的端口:netstat -anp tcp | grep LISTEN

2、如需快速定位某端口(例如 8080),直接追加过滤条件:netstat -anp tcp | grep 8080

3、观察输出中的 “Local Address” 字段,若出现 *:8080127.0.0.1:8080 且状态为 LISTEN,则确认该端口正被监听。

4、为获取对应进程 PID,可进一步执行:sudo lsof -iTCP -sTCP:LISTEN | grep 8080

三、通过 kill 命令强制终止占用进程

获得占用端口的 PID 后,可通过 kill 发送信号终止进程;-9 参数确保不可忽略的强制结束,适用于僵死或拒绝响应的进程。

1、在终端中输入以下命令,将“PID”替换为上一步查得的实际数字:kill -9 PID

音剪
音剪

喜马拉雅旗下的一站式AI音频创作平台,强大的在线剪辑能力,帮你轻松创作优秀的音频作品

下载

2、若权限不足导致拒绝操作,需添加 sudo 提权:sudo kill -9 PID

3、执行后无提示即表示命令已提交,系统开始终止进程。

4、立即验证是否释放成功:lsof -i :端口号,若无输出则端口已空闲。

四、使用活动监视器图形化终止进程

活动监视器提供可视化界面,适合不熟悉命令行的用户安全识别和终止进程,支持按 PID 搜索、查看 CPU/内存占用及强制退出功能。

1、打开“应用程序” → “实用工具” → “活动监视器”,或通过聚焦搜索启动。

2、点击右上角搜索框,输入从 lsof 或 netstat 获取的 PID 数值

3、在结果列表中选中对应进程条目,确保其 COMMAND 列与预期一致(如 nodepythonjava)。

4、点击窗口左上角的红色“X”按钮,在弹出对话框中选择 强制退出 并确认。

五、使用 ps 与 pgrep 辅助定位进程详情

当 lsof 输出不完整或权限受限时,ps 可结合 pgrep 快速匹配进程名并提取 PID,增强诊断鲁棒性。

1、若已知疑似占用程序名称(如 “node”),执行:pgrep -f node,返回匹配的 PID 列表。

2、对返回的任一 PID,进一步查看完整命令行:ps -p PID -o pid,comm,args

3、若需确认该进程是否监听网络端口,可组合 lsof 查询:lsof -p PID -i

4、确认无误后,仍使用 kill -9 PID 终止。

相关专题

更多
python开发工具
python开发工具

php中文网为大家提供各种python开发工具,好的开发工具,可帮助开发者攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。php中文网还为大家带来python相关课程以及相关文章等内容,供大家免费下载使用。

746

2023.06.15

python打包成可执行文件
python打包成可执行文件

本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。

634

2023.07.20

python能做什么
python能做什么

python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。

758

2023.07.25

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

617

2023.07.31

python教程
python教程

Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。

1261

2023.08.03

python环境变量的配置
python环境变量的配置

Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

547

2023.08.04

python eval
python eval

eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

577

2023.08.04

scratch和python区别
scratch和python区别

scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。

705

2023.08.11

Java 项目构建与依赖管理(Maven / Gradle)
Java 项目构建与依赖管理(Maven / Gradle)

本专题系统讲解 Java 项目构建与依赖管理的完整体系,重点覆盖 Maven 与 Gradle 的核心概念、项目生命周期、依赖冲突解决、多模块项目管理、构建加速与版本发布规范。通过真实项目结构示例,帮助学习者掌握 从零搭建、维护到发布 Java 工程的标准化流程,提升在实际团队开发中的工程能力与协作效率。

10

2026.01.12

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 0.6万人学习

Django 教程
Django 教程

共28课时 | 3万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.1万人学习

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

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