如何保持Homebrew应用整洁更新、识别可清理内容与未使用应用
如何保持Homebrew应用整洁更新、识别可清理内容与未使用应用
兄弟,我太懂你这种brew更新慢、一堆包不知道留不留的痛苦了!咱一步一步来解决你的问题:
一、先分清「你主动装的包」和「依赖库」
Homebrew其实自带命令帮你区分,不用一个个查brew info:
- 用
brew leaves命令,它会列出你直接安装的顶层包——也就是那些不是作为其他包依赖安装的,全是你当初主动brew install的东西。 - 对比
brew list输出的所有包,剩下的就是各种依赖库了。这样你就能把注意力集中在自己装的包上,不用管那些看不懂的库。
二、找出你很久没用到的应用
针对命令行工具
可以通过检查命令的最后执行时间来判断:
for pkg in $(brew leaves); do stat -f "%Sm %N" /usr/local/bin/$pkg 2>/dev/null done | sort
这个命令会遍历你主动装的所有命令行工具,显示它们的最后修改/执行时间,那些几个月甚至一年没碰的,大概率可以删了。
针对GUI应用(通过Cask安装的)
可以查看Caskroom里应用的最后访问时间:
find /usr/local/Caskroom -type d -exec ls -lt {} \; | grep -v "\." | head -30
这样能看到各个GUI应用的目录最后更新/访问时间,太久没打开的APP就可以考虑brew uninstall --cask [应用名]删掉。
三、优化brew更新速度,同时清理冗余
你已经用了brew autoremove,但还有几个更彻底的清理操作:
- 执行
brew cleanup:会自动删除旧版本的包和下载缓存,减少brew更新时需要检查的内容,能明显加快更新速度。如果想更彻底,加-s参数:brew cleanup -s,只保留当前版本的包。 - 定期跑
brew doctor:它会检查Homebrew的配置问题,比如过时的依赖、损坏的链接,修复这些问题也能避免更新时出岔子拖慢速度。 - 如果更新还是慢,建议检查下本地的brew源是否稳定,清理后默认源的速度大多能回到正常水平。
四、整理你的包清单(可选但有用)
用 brew bundle dump 命令生成一个Brewfile,这个文件会记录你所有主动安装的包和Cask应用。以后如果换电脑或者重新安装,直接brew bundle install就能一键恢复,也方便你定期对照这个清单,删掉那些不在常用列表里的包。
备注:内容来源于stack exchange,提问作者Polo




