最可靠方式是生成并维护Brewfile:用brew bundle dump --file=Brewfile导出含formula、cask、tap及版本约束的清单,新机上执行brew bundle install即可一键恢复全部软件及App Store应用。
macos 上用 homebrew 批量恢复软件,核心不是备份二进制文件,而是保存“装了什么”和“怎么装”的清单,再按需重装。最可靠、可复用的方式是生成并维护一个 brewfile。
用 brew bundle dump 生成标准 Brewfile
这是官方推荐的迁移与恢复方式,能同时记录 formula(命令行工具)和 cask(图形应用),还保留 tap 源和版本约束:
- 在已有环境的终端中运行:
brew bundle dump --file=Brewfile - 生成的 Brewfile 是纯文本,可直接提交到 Git、存网盘或复制到新机
- 它自动包含:
brew安装的工具、brew install --cask的 GUI 应用、tap源(如 homebrew/cask-versions)、甚至masApp Store 应用(如果之前执行过mas list并写入)
在新 Mac 上一键恢复全部软件
确保已安装 Homebrew 和 mas(如需恢复 App Store 应用)后,执行:
让 macOS 自动化像说话一样简单 —— 用代码控制你的 Mac,无需学习 AppleScript 系统要求 macOS 14+ (Sonoma) Python 3.9+ 需要开启:辅助功能 + 屏幕录制权限
- 先安装依赖工具:
brew tap homebrew/bundle && brew install mas - 登录 Apple ID(仅限恢复 MAS 应用):
mas signin your@apple.com - 执行恢复:
brew bundle install(默认读取当前目录下的 Brewfile) - 该命令会自动判断每项类型:跳过已存在项,按顺序安装 formula、cask、mas 应用,并处理依赖
补充说明:纯文本清单也能用,但功能有限
如果你只有类似 brew list > packages.txt 这样的简单列表,恢复时只能覆盖 formula:
- 逐行安装:
cat packages.txt | xargs -I {} brew install {} - 但这种方式无法识别 cask 应用,也不能还原安装来源(比如某款 VS Code 是通过 cask 还是官网 dmg 装的)
- 不推荐用于正式迁移,容易遗漏或误装
配合 App Store 应用一起恢复
Brewfile 可以整合 mas 应用,前提是生成时已启用支持:
- 首次生成前,先运行:
mas list > /dev/null 2>&1 || echo "mas not signed in"确保已登录 - 再执行
brew bundle dump,Brewfile 中就会出现类似mas 'Xcode', id: 497799835的条目 - 恢复时
brew bundle install会自动调用mas install完成 App Store 软件部署










