扫描时主动找这些类别。每类给出:典型路径、判断方法、安全等级、清理命令。不确定某项是什么时,先 ls/du 看内容再下结论。
删了零影响,工具/应用下次自动重新生成。
| 项目 | 路径 | 命令 |
|---|---|---|
| Go 编译缓存 | ~/Library/Caches/go-build |
go clean -cache |
| Go 模块缓存 | ~/go/pkg/mod |
go clean -modcache |
| Rust Cargo | ~/.cargo/registry/cache、~/.cargo/registry/src |
rm -rf ~/.cargo/registry/cache ~/.cargo/registry/src |
| JetBrains 索引 | ~/Library/Caches/JetBrains |
rm -rf ~/Library/Caches/JetBrains |
判断: 这类目录能单挑几十 G(go-build 见过 52G)。go/cargo 命令清更干净;直接 rm 也行。重建需要重新编译/联网下载,但代码和配置完全不碰。
| 项目 | 路径 | 命令 |
|---|---|---|
| npm | ~/.npm/_cacache、~/.npm/_npx |
npm cache clean --force(再 rm -rf ~/.npm/_npx) |
| pip | ~/Library/Caches/pip |
pip cache purge 或 pip3 cache purge(pip 可能不存在,试 pip3) |
| Homebrew | ~/Library/Caches/Homebrew |
brew cleanup --prune=all(比直接 rm 干净,清旧版本依赖) |
| node-gyp | ~/Library/Caches/node-gyp |
rm -rf ~/Library/Caches/node-gyp |
注意: _npx 是 npx 临时跑过的包缓存,能单独占几百 M,npm cache clean 不清它,要单独 rm。
| 项目 | 路径 |
|---|---|
| Chrome 缓存 | ~/Library/Caches/Google/Chrome |
关键区分: Caches/Google 是网页缓存,可删;Application Support/Google/Chrome 含登录态/书签/历史/Profile,不要整目录删,里面 Profile 1 等是用户数据。建议用户在浏览器内清缓存更安全。
典型:~/Library/Application Support/<App>/log*、~/Library/Application Support/<App>/*/logs
见过的大户:钉钉 gaea.log(单文件 270M)、钉钉直播 dinglive/logs(385M)、Trae logs、豆包输入法 Log。
命令: rm -rf <logdir>/* —— 删内容保留空目录,App 下次正常写。
删了能用,但要联网重下或重新构建。
| 项目 | 路径 | 代价 |
|---|---|---|
| node_modules | 项目里 */node_modules |
需 npm install 重装,几十秒到几分钟 |
| Playwright 浏览器 | ~/Library/Caches/ms-playwright |
需 npx playwright install 重下 |
| 账号资源缓存 | ~/Library/Application Support/<App>/*_v3/EAppFiles、resource_cache |
小程序/资源文件,下次打开重下 |
| App 缩略图缓存 | ~/Library/Caches/<App>/thumbnails |
重新生成 |
建议: 先确认对应项目/工具当前不在用,再删。
必须问用户"还用不用",别替他决定。
- 路径:
~/Library/Containers/com.docker.docker/Data/vms/*/Docker.raw - 特点:文件只增不减,删镜像后体积也不缩。见过的 3.5G+。
- 不用了:直接删
.raw,或 Docker Desktop 里 "Clean / Purge data"。 - 还在用:启动 Docker 跑
docker system prune -a --volumes清未用镜像/卷(防膨胀,不缩文件)。
~/.colima/*.raw、~/.colima/*.qcow2—— 同理,不用了删镜像文件。
- Codex:
~/.codex/sessions(见过 3.1G)、~/.codex/archived_sessions、~/.codex/computer-use、~/.codex/generated_images - Claude:
~/.claude、~/Library/Application Support/Claude* - 判断:用户需要翻旧会话吗?不需要就能清。
- 路径:
~/Library/Application Support/MobileSync/Backup - 常常几十 G,是手机整机备份。删前确认用户不需要恢复旧设备。
默认建议保留,除非用户明确说不要。删前最好再问一次。
| 项目 | 路径 |
|---|---|
| 聊天记录数据库 | ~/Library/Application Support/DingTalkMac/*_v3/DBFiles、微信 com.tencent.xinWeChat |
| 下载文件夹 | ~/Downloads |
| 账号配置/UserStorage | *_v3/UserStorage、*_v3/config |
| 文档 | ~/Documents |
微信/钉钉类: 建议用户在 App 内的"存储管理"清,会比直接删文件安全(保留账号配置)。
这些类别目录名不显眼,容易漏。扫描时主动 find:
# 崩溃报告堆积(Electron 应用)
find ~/Library -iname "Crashpad" -o -iname "KSCrash"
find ~/Library -path "*/Crashpad/pending" -name "*.dmp" | head
# 自动更新残留(下载没清的安装包)
find ~/Library -iname "*update*" -o -iname "*ShipIt*" -o -iname "*updater*"
# 失控日志
find ~/Library -type f -iname "*.log*" -size +50M
find ~/Library -type d -iname "log*"
# 大虚拟磁盘镜像
find ~/Library/Containers ~/.colima -name "*.raw" -o -name "*.qcow2"~/Library/Application Support/<ElectronApp>/Crashpad/pending/ 里的 .dmp 文件,是应用崩溃后生成的转储,本应上传到崩溃统计服务器后移到 completed/。但上传失败时会无限堆积:
- 见过 Codex 桌面端堆了 65535 份(目录项上限)、9.9G,全是同一种崩溃。
- 判断是否还在涨:看
pending/里文件的 mtime 最新一份,对比当前时间。停了就是死数据。 - 清理:
rm -rf <App Support>/<App>/Crashpad/pending,应用下次崩溃会重建目录。连根删整个Crashpad也行。
每轮删前后都量一下,给用户看到实际回收:
du -sh <dir> # 删前
rm -rf <dir>/*
du -sh <dir> # 删后(应接近 0)汇总时算累计回收量,让用户有进度感。