Mac终端读取传感器主要依赖SMC和ioreg:powermetrics原生支持实时采样(Intel可获CPU温度,M系列多不可用),ioreg可检索键值如TC0D,istats需安装但输出结构化(M系列仅支持风扇、电池等)。

Mac 通过终端读取传感器数值,主要依赖系统管理控制器(SMC)和 I/O 注册表(ioreg)。不同芯片架构(Intel vs Apple Silicon)支持程度不同,M 系列 Mac 自 macOS 14 起已屏蔽部分底层温度传感器访问,但仍有多个有效途径可查关键指标。
用 powermetrics 查看实时 SMC 传感器数据
这是 macOS 原生工具,无需安装,适用于 Intel Mac 和部分 M 系列机型(但 CPU Die 温度在 M 系列上通常返回 N/A 或不可用)。
- 打开「终端」→ 输入:sudo powermetrics --samplers smc -n 1(
-n 1表示只采样一次,避免滚动刷屏) - 输入管理员密码后,输出中查找以下字段:
- CPU Die Temperature:Intel Mac 可见,M 系列多数为空或不显示
- Fan X rpm:风扇当前转速(X 为编号,如 Fan 0 rpm)
- thermal level:热压力等级(0 = 正常,4 = 已节流降频)
- CPU Power、GPU Power:功耗估算值(单位瓦特)
- 如需持续监控关键项,可用:sudo powermetrics --samplers smc | grep -E "(CPU Die|Fan|thermal|Power)"
用 ioreg 检索原始传感器键值
适合快速定位特定传感器,尤其对 Intel Mac 更可靠;M 系列部分键值仍可读,但含义可能变化或缺失。
- 查看所有含 temperature 的条目:ioreg -l | grep -i temperature
- 精准读取 CPU 核心温度(Intel):ioreg -l | grep -i "TC0D"(TC0D = CPU Die)
- 常见传感器键参考:
- TC0D:CPU 核心温度(Intel)
- TG0D:GPU 温度(Intel)
- Tm0P:内存区域温度
- Ta0P:环境温度(部分机型)
- ALV0:环境光强度(若有)
用 istats 获取结构化报告
需先安装,但输出清晰易读,适合日常快速检查(Intel Mac 全功能;M 系列仅支持风扇、电池、部分功耗等)。
让 macOS 自动化像说话一样简单 —— 用代码控制你的 Mac,无需学习 AppleScript 系统要求 macOS 14+ (Sonoma) Python 3.9+ 需要开启:辅助功能 + 屏幕录制权限
- 安装(需先有 Ruby 和 Xcode 命令行工具):sudo gem install iStats
- 查看 CPU 温度(Intel):istats cpu
- 查看全部传感器摘要:istats
- 单独查风扇:istats fan
- 注意:M 系列运行
istats cpu可能报错或无输出,此时建议改用istats battery或istats power观察负载趋势
其他可用命令与注意事项
部分第三方工具或低层命令在新版系统中受限,使用前注意兼容性。
-
osx-cpu-temp(Homebrew 安装):
brew install osx-cpu-temp→osx-cpu-temp,轻量,但仅支持 Intel -
smc 命令行工具(需手动编译):来自 smcFanControl 项目,支持
./smc -k TC0D -r直接读键,但 M 系列多数键已失效 - M 系列用户重点观察:活动监视器 → 能量标签页中的“能量影响”、“平均能量影响”及“风扇是否转动”,比温度数字更能反映实际热状态
- 所有需要
sudo的命令,首次运行均需输入管理员密码(输入时不显示字符,输完直接回车)










