其他
在 macOS 上用 Mole CLI 深度清理、卸载…
需要在 macOS 终端中用 Mole (`mo`) 释放空间、清理残留、分析磁盘、优化系统、清理项目产物或监控系统状态时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 35/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 38/100 ×0.15
适用场景
在 macOS 上用 Mole CLI 特定
解决思路
- 通过 Homebrew 安装 Mole:`brew install mole`。
- 通过安装脚本安装 Mole:`curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash`。
- 安装指定版本:`curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash -s 1.17.0`。
- 安装最新 main 分支 nightly 版本:`curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash -s latest`。
- 运行交互菜单:`mo`,用方向键或 vim 的 `h/j/k/l` 导航。
- 深度清理系统缓存、浏览器缓存和开发工具缓存:`mo clean`。
- 移除应用及所有隐藏残留:`mo uninstall`。
- 重建缓存、重置网络、刷新 Finder/Dock:`mo optimize`。
- 打开可视化磁盘空间浏览器:`mo analyze`。
- 查看实时系统健康仪表盘:`mo status`。
- 删除项目构建产物:`mo purge`。
- 查找并删除安装包 `.dmg/.pkg` 文件:`mo installer`。
- 配置 Touch ID 用于 sudo:`mo touchid`。
- 设置 shell tab 补全:`mo completion`。
- 更新 Mole:`mo update`。
- 更新到最新未发布构建:`mo update --nightly`,仅脚本安装可用。
- 卸载 Mole 自身:`mo remove`。
- 查看帮助:`mo --help`。
- 查看版本:`mo --version`。
- 删除前先安全预览:运行 `mo clean --dry-run`、`mo uninstall --dry-run`、`mo purge --dry-run`。
- 结合 debug 查看详细预览输出:运行 `mo clean --dry-run --debug`、`mo optimize --dry-run --debug`。
- 使用 `mo clean` 清理用户应用缓存、浏览器缓存(Chrome、Safari、Firefox)、开发工具缓存(Xcode、Node.js、npm)、系统日志、临时文件、应用特定缓存(Spotify、Dropbox、Slack)和 Trash。
- 交互式执行深度清理:`mo clean`。
- 预览深度清理将删除的内容:`mo clean --dry-run`。
- 管理受保护缓存白名单:`mo clean --whitelist`,白名单配置位于 `~/.config/mole/`,编辑它来保护不想清理的路径。
- 使用 `mo uninstall` 查找应用,显示大小和最后使用日期,然后删除应用包及相关文件:Application Support、Caches、Preferences、Logs、WebKit storage、Cookies、Extensions、Plugins、Launch Daemons。
- 交互式多选卸载应用:`mo uninstall`。
- 预览卸载将删除的内容:`mo uninstall --dry-run`。
- 运行所有系统优化:`mo optimize`。
- 预览系统优化:`mo optimize --dry-run`。
- 排除特定优化步骤:`mo optimize --whitelist`。
- 在 `mo optimize` 中重建系统数据库并清理缓存。
- 在 `mo optimize` 中重置网络服务。
- 在 `mo optimize` 中刷新 Finder 和 Dock。
- 在 `mo optimize` 中清理诊断和崩溃日志。
- 在 `mo optimize` 中删除 swap 文件并重启 dynamic pager。
- 在 `mo optimize` 中重建 launch services 和 Spotlight 索引。
- 分析 home 目录,默认跳过 `/Volumes`:`mo analyze`。
- 分析指定路径:`mo analyze ~/Downloads`。
- 显式包括外接硬盘:`mo analyze /Volumes`。
- 输出机器可读结果用于脚本:`mo analyze --json ~/Documents`。
- 在 `mo analyze` 中用 `↑↓` 或 `j/k` 导航列表。
- 在 `mo analyze` 中用 `←→` 或 `h/l` 返回或进入目录。
- 在 `mo analyze` 中按 `O` 在 Finder 中打开。
- 在 `mo analyze` 中按 `F` 在 Finder 中显示。
- 在 `mo analyze` 中按 `⌫` 移到废纸篓(通过 Finder,比直接删除安全)。
- 在 `mo analyze` 中按 `L` 显示大文件。
- 在 `mo analyze` 中按 `Q` 退出。
- 查看实时 CPU、GPU、内存、磁盘、网络和进程:`mo status`。
- 输出 JSON 用于脚本:`mo status --json`。
- 通过管道读取健康分数:`mo status | jq '.health_score'`,Mole 会自动检测管道并输出 JSON。
- 在 `mo status` 中按 `k` 切换猫吉祥物。
- 在 `mo status` 中按 `q` 退出。
- 使用 `mo purge` 扫描 `node_modules`、`target`、`build`、`dist`、`venv` 等目录,7 天内项目默认不选中。
- 交互式多选清理项目构建产物:`mo purge`。
- 预览项目构建产物清理:`mo purge --dry-run`。
- 配置自定义扫描目录:`mo purge --paths`。
- 配置自定义扫描路径文件 `~/.config/mole/purge_paths`,写入如 `~/Documents/MyProjects`、`~/Work/ClientA`、`~/Work/ClientB`;该文件存在时 Mole 只使用这些路径,否则默认使用 `~/Projects`、`~/GitHub`、`~/dev`。
- 安装 `fd` 加快扫描:`brew install fd`。
- 查找 Downloads、Desktop、Homebrew cache、iCloud、Mail 中的 `.dmg/.pkg` 文件:`mo installer`。
- 预览安装包文件删除:`mo installer --dry-run`。
- 所有配置位于 `~/.config/mole/`。
- 使用 `purge_paths` 配置文件指定 `mo purge` 要扫描的自定义目录。
- 使用 `operations.log` 记录所有文件操作。
- 禁用操作日志:先 `export MO_NO_OPLOG=1`,再运行 `mo clean`。
- 交互设置 bash/zsh/fish 的 shell tab 补全:`mo completion`。
- 启用 Touch ID 认证 sudo 命令:`mo touchid`。
- 预览 Touch ID 启用操作:`mo touchid enable --dry-run`。
- 在脚本中检查磁盘健康:`health=$(mo status --json | jq -r '.health_score')`;如果 `health` 小于 70,则输出警告并运行 `mo clean --dry-run`,准备好后换成 `mo clean`。
- 获取最大目录 JSON 并用 jq 处理:`mo analyze --json ~/Downloads | jq '.entries | sort_by(-.size) | .[0:5] | .[] | {name, size_gb: (.size / 1073741824 | . * 100 | round / 100)}'`。
- 在 CI teardown 中自动清理项目构建产物:`MO_NO_OPLOG=1 mo purge --dry-run`,脚本中始终先预览。
- 配置 Raycast / Alfred 快速启动器:先运行安装脚本,然后在 Raycast 中把 `mo clean`、`mo status`、`mo analyze` 绑定为脚本命令。
- 安全边界:`mo analyze` 通过 Finder 把文件移到废纸篓(可恢复),而不是直接删除,适合临时清理。
- 安全边界:`clean`、`uninstall`、`purge`、`installer`、`remove` 是永久破坏性命令,始终先加 `--dry-run`。
- 安全边界:Mole 会验证路径并强制执行受保护目录规则,会跳过或拒绝高风险操作。
- 安全边界:操作日志位于 `~/.config/mole/operations.log`,可用 `MO_NO_OPLOG=1` 禁用。
- 安全边界:在自动化管道中使用前,审查 `SECURITY.md` 和 `SECURITY_AUDIT.md`。
- 故障排除:出现 `mo: command not found` 时,运行 `brew install mole` 或重新运行安装脚本,并检查 `$PATH`。
- 故障排除:Purge 扫描慢时,安装 `fd`:`brew install fd`。
- 故障排除:外接硬盘没有出现在 analyze 中时,显式运行 `mo analyze /Volumes`。
- 故障排除:想保护某个缓存不被清理时,运行 `mo clean --whitelist` 将其加入。
- 故障排除:需要排除某个优化步骤时,运行 `mo optimize --whitelist`。
- 故障排除:脚本出现交互提示时,使用 `--dry-run` 标志,并检查 `MO_NO_OPLOG=1` 环境变量。
- 故障排除:nightly 更新不工作时,确认 `--nightly` 只适用于脚本安装,不适用于 Homebrew。
- 更新到最新稳定版:`mo update`。
- 更新到最新 main 分支:`mo update --nightly`,仅脚本安装可用。
- 完全卸载 Mole:`mo remove`。
- 预览卸载 Mole 将删除的内容:`mo remove --dry-run`。
适用边界 · 注意事项
- 非 macOS 环境不适用,因为 Mole 是 macOS 维护 CLI。
- 未安装 Mole 或不能使用 Homebrew/安装脚本时不适用。
- 对永久删除敏感、未先备份或未执行 `--dry-run` 时,不要运行 `clean`、`uninstall`、`purge`、`installer`、`remove` 等破坏性命令。