可通过活动监视器、launchctl命令、LaunchDaemons目录检查及systemstats工具四种方式查看macOS已激活服务与运行中进程:活动监视器提供图形化实时监控;launchctl list权威列出已加载的launchd服务;/System/Library/LaunchDaemons等目录中plist文件的Disabled键值标识开机启用状态;systemstats输出内核级服务快照。

如果您希望了解当前 macOS 系统中哪些服务已激活、哪些后台进程正在运行,以便排查性能异常、网络连接问题或权限行为,则需通过系统内置工具获取实时、权威的运行时信息。以下是多种可直接操作的方法:
一、使用“活动监视器”查看所有活跃进程与服务状态
活动监视器是 macOS 官方提供的图形化系统监控工具,可实时显示 CPU、内存、能耗、磁盘与网络占用最高的进程,并标注其启动方式(如 launchd、用户登录项、系统守护进程等),便于识别已激活的服务。
1、按下 Command + 空格键 打开聚焦搜索,输入 活动监视器 并回车。
2、在顶部标签栏中依次点击 CPU、内存、能耗、磁盘 和 网络 标签页,观察各维度下进程列表。
3、在任一标签页中,右键点击列标题区域,勾选 PID、用户、启动时间、命令行 和 签名状态,以增强识别能力。
4、在进程列表中,查找名称含 launchd、mdnsresponder、distnoted、mDNSResponder、apsd 或以 com.apple. 开头的条目,这些多为系统级已激活服务。
二、通过终端执行 launchctl 命令列出已加载的 launchd 服务
macOS 使用 launchd 统一管理系统服务(daemon)和用户级代理(agent),所有已启用且当前加载的服务均可通过 launchctl list 命令枚举,结果包含服务标识符、PID 和最后一次退出状态,是判断服务是否“已激活”的最权威依据。
1、打开终端(可通过聚焦搜索输入 终端 并回车)。
2、执行以下命令列出当前用户会话中已加载的代理服务:
launchctl list | grep -v "PID" | grep -v "0x"
3、执行以下命令列出系统级守护进程(需管理员权限):
sudo launchctl list | grep -v "PID" | grep -v "0x"
4、若需查看某具体服务的详细配置路径,运行:
launchctl print gui/$(id -u)/com.apple.dock(将 com.apple.dock 替换为目标服务标识符)。
三、检查 /System/Library/LaunchDaemons 与 /Library/LaunchDaemons 目录中的 plist 文件
系统级服务定义文件(.plist)存放于指定目录,文件是否存在不等于服务已激活,但结合其 Disabled 键值可准确判断是否被设置为开机启用。该方法适用于离线审计或预部署验证。
1、在访达中按 Shift + Command + G,输入路径:/System/Library/LaunchDaemons,点击前往。
2、在该目录中,查找扩展名为 .plist 的文件,双击任意一个用文本编辑器打开,搜索键名 Disabled。
3、若存在
4、重复步骤 1–3,访问路径:/Library/LaunchDaemons,检查第三方或管理员手动安装的服务定义。
四、使用 systemstats 命令获取内核级服务与进程快照
systemstats 是 macOS 内置的低开销系统统计工具,可导出包括活跃服务、守护进程生命周期、沙盒状态及资源约束在内的原始数据,适合需要排除 GUI 工具延迟或权限遮蔽的场景。
1、在终端中执行:
sudo systemstats --all
2、在输出中定位 services 区块,其中每项包含 name(服务名)、state(running/stopped)、type(daemon/agent)字段。
3、若需仅筛选当前运行中服务,追加管道过滤:
sudo systemstats --all | grep -A5 "services" | grep "state.*running"
4、注意:该命令输出为 JSON-like 结构,部分字段需配合 jq 工具解析,如已安装,可运行:
sudo systemstats --all | jq '.services[] | select(.state == "running") | .name'











