清理 Homebrew 缓存非常简单,主要使用 brew cleanup 命令,以及手动删除不完整的下载文件。

1. 清理已安装应用留下的旧版本和旧下载

这个命令是 Homebrew 官方推荐的清理方式。它会删除:

  • 旧版本的 Formulae(例如,如果你升级了 Python,它会删除旧版本的 Python 文件)。
  • 超过 120 天的旧的下载文件(Bottles 和 Cask 安装包)。

运行以下命令:

Bash

1
brew cleanup

如果你想查看它会删除哪些文件,而不实际删除:

Bash

1
brew cleanup -n  # -n 或 --dry-run

2. 清理所有下载缓存(包括未完成的下载)

Homebrew 将所有下载的文件(无论是已完成还是未完成的)都放在一个缓存目录下。对于 Cask 那些卡死的下载,它们通常以 .incomplete 结尾。

首先,找到你的 Homebrew 缓存目录:

Bash

1
brew --cache

通常路径是:~/Library/Caches/Homebrew

清理 Cask 的缓存(重点)

Cask 的下载文件位于缓存目录下的 Cask 子目录中。

要删除所有 Cask 的下载缓存(包括那些未完成的、卡死的 Spotify 下载):

Bash

1
rm -rf "$(brew --cache)/Cask"

这个命令会强制删除 ~/Library/Caches/Homebrew/Cask 文件夹下的所有内容,包括未下载完成的临时文件(.incomplete 文件)。

清理所有 Formulae 和 Bottles 的下载缓存

如果你想彻底清理 Homebrew 下载过的所有 Formulae(命令行工具)的安装包(不影响已安装的应用):

Bash

1
rm -rf "$(brew --cache)/downloads"

3. 清理 Brewfile Lock 文件(可选)

如果你使用了 brew bundle(通过 Brewfile 管理软件列表),并且安装过程中断,可能会产生锁文件。删除它们可以确保下次 brew bundle 能顺利运行。

Bash

1
rm -f "$(brew --prefix)/var/homebrew/locks/brew.rb.lock"