为何brew cleanup/brew cleanup -n无输出?如何清理Homebrew冗余文件
关于Homebrew
brew cleanup无输出的问题解答 嘿,这情况其实挺常见的,我来给你捋清楚~
最可能的原因:确实没有冗余文件可清理
你昨天刚装完Homebrew,这时候系统里还没有旧版本的Formula/Cask包,也没有下载后残留的安装缓存文件——而brew cleanup的核心作用就是清理这些冗余内容:
- 删除已升级软件的旧版本安装文件
- 清理下载目录里的安装包缓存
- 移除不再被任何包依赖的旧版本库
因为你的Homebrew是全新的,还没经历过包更新、版本迭代,自然没有可删的内容,所以brew cleanup和brew cleanup -n(预演模式)都不会输出任何信息,这完全是正常现象。
有没有可能命令执行了但没显示输出?
其实这就是brew cleanup的设计逻辑:只有当它找到可清理的内容时,才会输出具体的清理信息(比如释放了多少存储空间、删除了哪些文件);如果没有任何可清理的内容,它就会静默结束,不会输出任何内容——这并不代表命令没运行,只是没东西可处理而已。
验证方法:手动生成可清理内容
如果你想确认命令本身是正常工作的,可以手动制造一些冗余内容来测试:
- 安装一个指定旧版本的包,比如:
brew install wget@1.21 - 升级这个包到最新版本:
brew upgrade wget - 再运行预演清理命令:
brew cleanup -n
这时候你应该能看到类似这样的输出,显示即将删除的旧版本包和预计释放的空间:
Would remove: /usr/local/Cellar/wget@1.21/1.21.4 (119 files, 4.0MB) Would remove: /Users/yourname/Library/Caches/Homebrew/wget--1.21.4.bottle.tar.gz (3.2MB)
附上你提供的命令执行记录:
temp@Apples-MacBook-Pro ~ % brew cleanup -n temp@Apples-MacBook-Pro ~ % brew cleanup temp@Apples-MacBook-Pro ~ %
内容的提问来源于stack exchange,提问作者Rajat Shenoi
相关产品推荐
相关产品推荐

