Homebrew安装后提示“command not found: brew”是因为其二进制路径未加入PATH环境变量;需根据芯片类型将/opt/homebrew/bin(Apple Silicon)或/usr/local/bin(Intel)写入~/.zshrc,并执行source ~/.zshrc生效。
homebrew 本身不直接管理环境变量,它的核心作用是安装软件;但要让终端能识别 brew 安装的命令(比如 go、php、node),必须把 brew 的二进制目录加进 path。这一步不是可选的,漏了就会提示 command not found。
确认 brew 安装路径并写入 PATH
Apple Silicon(M1/M2/M3)和 Intel Mac 的路径不同,必须匹配你的芯片类型:
-
Apple Silicon:执行
brew --prefix,通常输出/opt/homebrew,对应二进制在/opt/homebrew/bin -
Intel:通常为
/usr/local,对应二进制在/usr/local/bin
编辑 ~/.zshrc(macOS Catalina 及以后默认 shell 是 zsh):
echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.zshrc # Apple Silicon # 或 echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.zshrc # Intel
然后运行 source ~/.zshrc 生效。别用 export PATH="..." > ~/.zshrc 这种写法——会清空整个文件。
启用 brew 的 shell 环境自动管理(推荐)
Homebrew 提供了 brew shellenv 命令,它会动态生成适配当前系统(包括 Cellar 路径、MANPATH、INFOPATH 等)的完整环境配置。比手动写 PATH 更健壮:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc # Apple Silicon # 或 echo 'eval "$(brew shellenv)"' >> ~/.zshrc # Intel(如果 brew 在 PATH 中)
再执行 source ~/.zshrc。这样后续 brew 升级或重装,环境变量仍能自动适配。
验证是否生效
新开一个终端窗口(或重新加载配置),运行:
-
echo $PATH—— 确认/opt/homebrew/bin或/usr/local/bin出现在最前面 -
which brew—— 应返回对应路径下的brew -
brew doctor—— 输出 “Your system is ready to brew.” 表示环境就绪
如果 which brew 无输出,说明 PATH 没生效,检查是否编辑了错误的配置文件(比如误改了 .bash_profile 却用 zsh)、有没有拼写错误、是否忘了 source。
注意多版本工具的路径冲突
Homebrew 安装多版本工具(如 php@8.1、node@18)时,它们默认不会被链入 /opt/homebrew/bin。你需要显式启用:
-
brew link php@8.1(链接到全局 PATH) - 或更安全的做法:
brew unlink php && brew link --force php@8.1
避免手动把 /opt/homebrew/opt/php@8.1/bin 加进 PATH —— 这样会绕过 brew 的版本调度逻辑,导致升级后路径失效。


















