如何删除与当前版本并排安装的Homebrew软件包的过时版本?

评论

从2.0.0版开始,除非您选择退出,否则清除会自动进行。

#1 楼

cleanup(brew cleanup)命令将删除过时的已安装软件包版本。要影响特定的包装/配方,可以提供如下的配方名称:brew cleanup $FORMULA。要模拟清理,即查看要删除的内容,可以使用-n选项:brew cleanup -n

评论


记录在案:Brew清理仅在安装了最新版本时才清理过期的软件包版本,因此首先进行brew升级,然后进行brew清理

– Jan
16-10-14在14:15

哇靠。那给了我3G以上的回报。谁知道…

– Alper
17年1月22日在14:58

此操作已释放大约17.2GB的磁盘空间。

– fvgs
17年4月17日在7:30

我的天啊!我刚获得超过12GB的空间。呜呜!

–理查德·赫特(Richard Hurt)
17年6月27日在17:12

哇,一年的升级无需清理,为我带来了17.6GB的未使用软件! (使用brew cleanup -n进行检查,它不会删除任何内容。)感谢您的回答。 :)

– Erik
17-10-13在18:07



#2 楼

@ aknuds1是关于brew cleanup的正确信息,所以我要补充一下,我在~/.profile中有一​​个别名,该别名会进行所有与酿造相关的清理,包括桶更新/清理

alias brewski='brew update && brew upgrade && brew cleanup; brew doctor'


我以brew doctor结尾,以确保正确打包所有软件包,例如,awscli在常规上似乎对此有问题,因此我必须不断取消链接/重新链接。希望能对您有所帮助。这些命令也引发错误,因此已删除对brew cask的引用。我已经相应地更新了命令

    Warning: We decided to not change the behaviour of `brew upgrade` so
    `brew upgrade --all` is equivalent to `brew upgrade` without any other
    arguments (so the `--all` is a no-op and can be removed).


评论


您不再需要冲泡升级冲泡桶,因为此拉取请求冲泡更新现在也将自动升级自制冲泡桶。

– Lantrix
16年7月12日在6:20

@Lantrix感谢您的更新。我已经编辑了答案以反映此更改。

–SaxDaddy
16年7月12日在15:28

brew upgrade --cleanup将在安装新软件包时删除旧软件包。

–辛尼泽
18年1月31日下午5:45

我不建议使用Brew升级,而是使用Brew过期的,然后通过Brew升级PACKAGE升级每个软件包,这样您就可以更好地控制

– Pedro Luz
18 Mar 24 '18在11:13

由于brew upgrade是用于升级所有软件包的单个命令,因此可以很好地实现自动化。 (可选)您可以固定要保留的软件包版本,然后一次升级其余所有版本。

–SaxDaddy
18 Mar 27 '18 at 22:52

#3 楼

仅作记录,您可以使用--cleanup标志清除即将升级的软件包的过时版本:

brew upgrade --cleanup <package_name>