Mac 命令行 brew 的使用方式汇总
Homebrew(简称 brew)是 macOS 上最流行的包管理工具,可以方便地安装、更新、卸载各种命令行工具和应用程序。
安装 Homebrew
官方安装方式
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
国内镜像安装(推荐)
网络受限时可使用国内镜像脚本:
/bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)"
安装完成后,根据终端提示将 brew 加入 PATH(Apple Silicon Mac 需执行):
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
验证安装
brew --version
# 输出示例:Homebrew 4.x.x
基本信息命令
| 命令 | 说明 |
|---|---|
brew --version |
查看 brew 版本 |
brew --prefix |
查看 brew 安装路径 |
brew config |
查看 brew 配置信息 |
brew doctor |
检查 brew 环境问题 |
brew help |
查看帮助 |
brew help <command> |
查看指定命令帮助 |
软件包管理(Formula)
搜索软件
# 搜索软件包
brew search <keyword>
# 示例:搜索 git 相关包
brew search git
查看软件信息
# 查看软件包详情(版本、依赖、主页等)
brew info <formula>
# 示例
brew info wget
安装软件
# 安装软件包
brew install <formula>
# 安装指定版本
brew install <formula>@<version>
# 示例
brew install wget
brew install node@18
卸载软件
# 卸载软件包
brew uninstall <formula>
# 卸载并删除所有版本
brew uninstall --force <formula>
更新软件
# 更新 brew 本身及所有仓库索引
brew update
# 升级所有已安装的软件包
brew upgrade
# 升级指定软件包
brew upgrade <formula>
# 锁定某个包,不随 upgrade 更新
brew pin <formula>
# 解除锁定
brew unpin <formula>
查看已安装的软件
# 列出所有已安装的软件包
brew list
# 列出顶层(非依赖)已安装的软件包
brew leaves
# 查看已安装软件的版本信息
brew list --versions
# 查看某个软件包的安装路径
brew --cellar <formula>
清理旧版本
# 清理所有软件包的旧版本和缓存
brew cleanup
# 清理指定软件包的旧版本
brew cleanup <formula>
# 查看可以清理的内容(不实际删除)
brew cleanup --dry-run
# 清理下载缓存
brew cleanup --prune=all
Cask(GUI 应用)管理
Cask 用于安装 macOS 图形界面应用(.app)。
# 搜索 GUI 应用
brew search --cask <keyword>
# 安装 GUI 应用
brew install --cask <cask>
# 卸载 GUI 应用
brew uninstall --cask <cask>
# 列出已安装的 GUI 应用
brew list --cask
# 升级所有 Cask 应用
brew upgrade --cask
# 查看 Cask 信息
brew info --cask <cask>
常用 Cask 示例:
brew install --cask google-chrome
brew install --cask visual-studio-code
brew install --cask iterm2
brew install --cask docker
brew install --cask rectangle
服务管理(Services)
brew services 用于管理通过 brew 安装的后台服务(如 MySQL、Redis、Nginx 等)。
# 列出所有服务及其状态
brew services list
# 启动服务
brew services start <service>
# 停止服务
brew services stop <service>
# 重启服务
brew services restart <service>
# 设置开机自启并立即启动
brew services start <service>
# 仅运行一次(不设置开机自启)
brew services run <service>
# 清理已停止的服务
brew services cleanup
示例(以 MySQL 为例):
brew install mysql
brew services start mysql
brew services list
Tap(第三方仓库)管理
Tap 允许添加第三方软件仓库。
# 添加第三方仓库
brew tap <user>/<repo>
# 列出所有已添加的 tap
brew tap
# 移除 tap
brew untap <user>/<repo>
示例:
# 添加 HashiCorp 官方仓库(安装 terraform、vault 等)
brew tap hashicorp/tap
brew install hashicorp/tap/terraform
换源(国内加速)
由于网络原因,国内使用 brew 可能较慢,推荐切换到国内镜像源。
切换到中科大源
# 替换 Homebrew 核心源
git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git
# 替换 homebrew-core
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
# 替换 homebrew-cask
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
# 替换 bottles(二进制预编译包)下载源(zsh)
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
切换到清华源
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
恢复官方源
git -C "$(brew --repo)" remote set-url origin https://github.com/Homebrew/brew.git
git -C "$(brew --repo homebrew/core)" remote set-url origin https://github.com/Homebrew/homebrew-core.git
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://github.com/Homebrew/homebrew-cask.git
常用环境变量
可在 ~/.zshrc 或 ~/.bash_profile 中设置以下变量来定制 brew 行为:
| 环境变量 | 说明 |
|---|---|
HOMEBREW_BOTTLE_DOMAIN |
指定 bottles 下载镜像地址 |
HOMEBREW_NO_AUTO_UPDATE=1 |
禁止 brew 在安装前自动 update |
HOMEBREW_NO_ANALYTICS=1 |
禁用 brew 使用数据收集 |
HOMEBREW_NO_INSTALL_CLEANUP=1 |
安装后不自动清理旧版本 |
HOMEBREW_INSTALL_FROM_API=1 |
直接从 API 获取包信息,加快速度 |
示例:
# 禁止自动 update,手动控制更新时机
export HOMEBREW_NO_AUTO_UPDATE=1
常见问题
权限问题
# 修复 /usr/local 权限
sudo chown -R $(whoami) /usr/local/bin /usr/local/lib /usr/local/sbin
查找软件实际安装位置
# 查看命令所在路径
which <command>
# 查看 brew 管理的软件安装路径
brew --prefix <formula>
重装某个软件
brew reinstall <formula>
查看依赖关系
# 查看某个包的依赖
brew deps <formula>
# 查看某个包被哪些包依赖
brew uses --installed <formula>
# 以树形图显示依赖
brew deps --tree <formula>
快速参考
brew install <pkg> # 安装
brew uninstall <pkg> # 卸载
brew upgrade [<pkg>] # 升级
brew search <keyword> # 搜索
brew info <pkg> # 查看信息
brew list # 列出已安装
brew update # 更新索引
brew cleanup # 清理缓存
brew doctor # 诊断问题
brew services list # 查看服务
brew services start <svc> # 启动服务
brew services stop <svc> # 停止服务