macos 无原生一键导出挂载统计报告命令,但可通过组合 df、mount、diskutil 等终端命令生成含设备、挂载点、空间、文件系统及 s.m.a.r.t. 健康状态的完整文本报告,并支持自动命名归档。

macOS 没有“一键导出挂载统计报告”的原生命令,但可通过组合终端命令生成结构清晰、含设备、挂载点、空间、文件系统和健康状态的完整文本报告,适合保存、比对或排查问题。
基础挂载关系与空间占用(核心报告)
运行以下命令可一次性输出所有挂载点的设备名、挂载路径、文件系统类型、使用率和可用空间,格式简洁易读:
- df -h -T | awk 'NR==1 || $1 ~ /^\/dev\// {print}':显示挂载点、文件系统类型(-T)、人类可读容量与使用率;过滤掉 tmpfs、devfs 等虚拟文件系统
- mount | grep "^/dev/" | awk '{print $1, "→", $3, "(" $5 ")"}':精简列出设备 → 挂载点(文件系统),便于快速映射
补充关键元数据(含健康与协议信息)
仅看 df 和 mount 不足以判断磁盘是否可靠。需为每个已挂载卷追加 S.M.A.R.T. 状态、物理协议(如 NVMe/USB)、APFS 容器归属等信息:
- 先获取所有已挂载的 APFS/exFAT/HFS+ 卷设备节点:df -P | awk '$1 ~ /^\/dev\// && $NF !~ /^\/(private|System|dev|proc)/ {print $1}' | sort -u
- 对每个设备执行:diskutil info "$dev" | grep -E "Mount|File System|Protocol|S.M.A.R.T.|APFS Container|Total Size|Available",可批量提取关键字段
- 若需自动汇总,可用脚本循环处理(示例片段):
for dev in $(df -P | awk '$1~/^\/dev\// && $NF~/^\/Volumes\//{print $1}' | sort -u); do echo "== $dev =="; diskutil info "$dev" | grep -E "Name:|Mount|Type:|Protocol:|S.M.A.R.T.|Available:"; done > mount_report_$(date +%m%d).txt
生成可归档的完整报告文件
将上述信息整合为一份带时间戳的纯文本报告,方便长期留存或发给技术支持:
- 运行完整命令(复制粘贴即可):
(echo "=== macOS 挂载统计报告 $(date) ==="; echo; echo "-- [挂载点与空间] --"; df -h -T | awk 'NR==1 || $1 ~ /^\/dev\//'; echo; echo "-- [设备挂载映射] --"; mount | grep "^/dev/" | awk '{print $1 " → " $3 " (" $5 ")"}'; echo; echo "-- [已挂载卷健康摘要] --"; for d in $(df -P | awk '$1~/^\/dev\// && $NF~/^\/Volumes\//{print $1}' | sort -u); do echo "* $(basename $d): $(diskutil info "$d" 2>/dev/null | awk -F': ' '/S.M.A.R.T. Status/{printf "%s", $2} /Mount Point/{printf " @ %s", $2}'); done) > mount_report_$(date +%Y%m%d_%H%M).txt - 执行后会在当前目录生成类似 mount_report_20260605_0815.txt 的文件,内容含时间戳、分区列表、挂载路径和 S.M.A.R.T. 状态摘要
附加建议:需要图形化或跨平台查看?
该报告为纯文本,兼容任何编辑器或邮件系统。如需进一步处理:
- 用 column -t 对齐 df 输出(提升可读性):df -h -T | awk 'NR==1 || $1 ~ /^\/dev\//' | column -t
- 导出为 CSV 供 Excel 分析:df -P | awk '$1~/^\/dev\// {printf "%s,%s,%s,%s,%s\n", $1,$2,$3,$4,$5}' > mounts.csv
- 检查 inode 是否耗尽(避免“空间够却写不了”):df -ih | grep "^\/dev\/"











