Mac 用久了,空间常常被缓存、旧安装包和开发项目占满。Mole 把清理、卸载、磁盘分析和状态监控放进同一个终端工具里。这篇记录我推荐的安装方式和日常使用顺序:先看清楚,再动手清理。
Mole 适合做什么
Mole 是 Tw93 开发的免费开源命令行工具,命令名是 mo。它比较适合处理几类日常问题:磁盘快满了但不知道什么占空间;App 卸载后还留着配置和缓存;开发项目中堆着不再需要的依赖与构建产物;想快速看一眼 CPU、内存和磁盘状态。
我建议把它当成一个维护工具箱,而不是每天都必须运行的“加速器”。缓存本来就有用途,删掉后软件可能需要重新生成。电脑运行正常、空间也够用时,没有必要为了一个更大的“清理数字”反复清理。
本文按 2026 年 9 月的官方文档更新,主要介绍命令行版。Mole 另外有独立的 Mac 图形应用,两者的分发和授权方式不同,后面会单独说明。
安装:优先使用 Homebrew
按 Command + 空格,搜索并打开“终端”。先检查有没有 Homebrew:
1 | brew --version |
能显示版本号,就可以继续安装:
1 | brew install mole |
第二条命令能显示 Mole 版本,说明安装成功。当前 Mole 命令行版支持 macOS 12 及以上,Apple Silicon 和 Intel Mac 均可使用;具体系统要求仍以官方说明为准。
如果提示 command not found: brew,先到 Homebrew 官网 按官方步骤安装。安装结束后不要漏掉终端里显示的 Next steps,其中可能需要把 Homebrew 加入 PATH。只关闭再打开终端,不一定能解决路径没配置的问题。
不想使用 Homebrew,也可以采用官方安装脚本:
1 | curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash |
这条命令会下载并执行安装脚本。介意直接执行时,可以先打开 install.sh 源码 看一下。脚本默认安装到 /usr/local/bin,可能会请求管理员密码。
两种安装方式选一种即可,不建议来回混装。以后遇到版本不一致,可以用下面两条命令检查终端实际调用的是哪一份:
1 | command -v mo |
第一次使用:先看空间,再预览清理
安装后输入 mo,会打开交互菜单。按页面提示使用方向键选择、回车进入,q 或 Ctrl + C 退出。也可以直接输入某个功能的命令,不必每次经过菜单。
我建议第一次按这个顺序来。
先找出空间去哪了
1 | mo analyze |
它会打开终端里的磁盘分析界面,帮助你逐层查看目录大小。先分清占空间的是视频、下载文件、照片图库,还是开发缓存,再决定下一步做什么。
默认概览会跳过外接磁盘。如果想专门看外接盘,可以运行:
1 | mo analyze /Volumes |
也能直接传入具体目录,例如 mo analyze ~/Downloads。这个界面除了查看,还支持选择文件并在确认后移到废纸篓,所以不要把它理解成任何按键都绝对只读。
预览清理范围
1 | mo clean --dry-run |
--dry-run 只扫描并展示计划,不执行清理。先看看它准备处理哪些路径,尤其注意是否涉及你正在使用的软件、开发环境和仍有用的数据。
想看更详细的扫描信息,可以加上调试输出:
1 | mo clean --dry-run --debug |
确认范围后,再执行:
1 | mo clean |
日常运行不用在命令前加 sudo,Mole 会在需要权限时提出请求。输入管理员密码时终端不显示字符是正常的,输完按回车即可。
建议先关闭准备清理的软件。清理之后第一次打开应用稍慢,可能是缓存正在重建,并不代表清理失败。
常用功能怎么选
卸载 App,并处理关联文件
1 | mo uninstall --dry-run |
先选中准备卸载的应用,查看它关联的配置、缓存、日志等路径。核对无误后,再运行 mo uninstall 执行卸载。
如果 App 本体已经删掉了,想找留下来的文件,用 mo clean 更合适。Mole 会尽量保留仍被其他已安装副本使用的共享数据,但仍然值得花几秒看清计划,尤其是大型软件和同一软件装了多个版本的情况。
清理下载过的安装包
1 | mo installer --dry-run |
下载目录常常会留下已经用完的安装包。预览后,再运行 mo installer 选择并清理。留着用于离线重装、旧版兼容或尚未安装的文件,就不要一起选进去。
查看电脑当前状态
1 | mo status |
这是只读的状态面板,可以查看硬件、系统压力、磁盘活动、网络、电源和进程等信息。电脑卡顿时,我会先看这里,确认是不是某个程序持续占用资源,而不是直接把问题归到“缓存太多”。
做一次有针对性的维护
1 | mo optimize --dry-run |
这个功能会预览受支持的 Finder、网络、数据库和系统服务维护项。真正需要时再运行 mo optimize,并阅读跳过原因;不必要、当前不安全或系统不支持的任务可能会被跳过。
它不保证电脑立刻变快,也不需要和每次清理捆绑执行。某一项不希望被处理,可以用 mo optimize --whitelist 配置保护规则。
开发项目多的话,重点看看 purge
写代码的人很容易遇到这种情况:项目源文件不大,node_modules、target、.build、build、dist 或虚拟环境却积累了好几份。
先预览扫描结果:
1 | mo purge --dry-run |
如果项目不在默认扫描目录里,先配置路径:
1 | mo purge --paths |
它管理的路径配置位于 ~/.config/mole/purge_paths。这是一个文件路径,不是要直接粘贴到终端执行的命令。一般用交互配置就够了,需要手动编辑时再打开这个文件。
确认哪些项目的产物可以重新生成后,运行 mo purge。清掉依赖之后,下一次开发可能需要重新安装依赖或构建;dist 里如果有唯一的一份发布成品,虚拟环境里如果有手动改过的内容,也不能简单按“能重建”处理。
正在开发的项目,我会优先保留。已经很久没碰、源码和依赖声明都完整的旧项目,才更适合拿来释放空间。
保护规则、操作记录和权限
有些缓存你明确希望保留,可以使用:
1 | mo clean --whitelist |
清理白名单保存在 ~/.config/mole/whitelist。它与 mo optimize --whitelist 保护的维护任务不是同一回事,也不要把它当成所有子命令通用的排除规则。
想回看做过哪些清理,可以运行:
1 | mo history |
需要便于程序处理的输出时,使用 mo history --json。操作日志位于 ~/Library/Logs/mole/operations.log。日志能帮助排查,但不是被删文件的备份,重要资料仍然需要单独备份。
遇到权限不足时,先看清是哪个路径、哪个操作。确实需要访问受保护目录,再到“系统设置 → 隐私与安全性 → 完全磁盘访问权限”,为你使用的终端应用授权,然后重新打开终端。没有遇到相关问题,不必为了运行工具先把所有权限都打开。
支持 Touch ID 的 Mac,还可以用下面的入口配置终端中的指纹授权:
1 | mo touchid |
按工具提示选择即可。这是可选的授权便利功能,不会替你开启完全磁盘访问权限,也不影响是否需要认真确认清理范围。
更新与卸载
Homebrew 安装的版本,优先继续用 Homebrew 管理:
1 | brew update |
脚本安装的版本可以运行 mo update。官方还提供 mo update --nightly 更新到未发布的主分支构建,但这是脚本安装方式使用的开发版入口,日常维护用稳定版即可。
如果不再需要,Homebrew 安装可以执行:
1 | brew uninstall mole |
脚本安装可以先运行 mo remove --dry-run 查看卸载计划,再运行 mo remove。
不喜欢终端怎么办
Mole 另有原生 Mac 应用,可以在 Mole 官网 查看界面和下载。需要区分的是:本文介绍的 CLI 免费开源,原生 Mac 应用是独立产品,官网提供试用和付费授权。 不要把两者理解成同一个免费工具换了个皮肤。
如果已经习惯终端,CLI 足够直接;更喜欢鼠标操作、磁盘图和集中管理界面,可以先试用图形应用,再决定是否需要。
我自己的建议仍然是:先用 mo analyze 找原因,再用对应功能处理。清理工具的价值是帮你看清和选择,不是替你决定所有文件都可以删。