できない.dev

brew: command not found で Homebrew が実行できない

インストールは終わっているのに brew が PATH に無い状態。
シェル設定に eval "$(/opt/homebrew/bin/brew shellenv)" を書いて読み直せば解決する。
Apple Silicon と Intel で prefix が違う点が原因の大半。

公開: 更新:

症状できない
brew --version
bash: brew: command not found

2026-10-17 に homebrew/brew(Homebrew 4.6.20) で実際に打って取った出力。検証環境の詳細

要約

brew: command not found(zsh: command not found: brew)は、Homebrew の本体は入っているのに brew の置き場所が PATH に無いときに出る。

インストーラは最後に「シェルの設定にこれを追記せよ」と shellenv の行を表示する。
その案内を実行していないと、この状態になる。
追記して読み直せば直る。

実行例

homebrew/brew で試すと、brew の実体はあるのに PATH に無いため command not found になった。shellenv の行を ~/.zshrc に足しても、動いているシェルが bash なので効かず、~/.bashrc に書いて読み直したところで初めて通っている。

$ brew --version
bash: brew: command not found
$ ls -l /opt/homebrew/bin/brew /usr/local/bin/brew /home/linuxbrew/.linuxbrew/bin/brew 2>/dev/null
lrwxrwxrwx 1 linuxbrew linuxbrew 20 Nov  3  2025 /home/linuxbrew/.linuxbrew/bin/brew -> ../Homebrew/bin/brew
$ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.zshrc
$ echo $0; brew --version
bash
bash: brew: command not found
$ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc; brew --version; source ~/.bashrc; brew --version
bash: brew: command not found
Homebrew 4.6.20
Homebrew/homebrew-core (git revision ca889ec7d9f; last commit 2025-11-03)
$ which brew; brew --version
/home/linuxbrew/.linuxbrew/bin/brew
Homebrew 4.6.20
Homebrew/homebrew-core (git revision ca889ec7d9f; last commit 2025-11-03)

— 2026-10-17 時点の出力

検証環境Git 2.51.2 / Homebrew 4.6.20 / 2026-10-17 検証
検証日
実行環境
homebrew/brew Ubuntu 22.04.5 LTS
バージョン
  • Git 2.51.2
  • Homebrew 4.6.20

この記事の「実行例」は、上記の環境で実際にコマンドを実行して得られた出力をそのまま掲載しています。 再現手順はリポジトリの検証スクリプトとして管理し、定期的に再実行して出力を更新しています。

解決策

1. brew の実体を探す

ls -l /opt/homebrew/bin/brew /usr/local/bin/brew /home/linuxbrew/.linuxbrew/bin/brew 2>/dev/null

存在した方が自分の環境の prefix である。

2. shellenv をシェル設定に追記する

Apple Silicon の Mac(zsh)の場合は次のとおり。

echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
source ~/.zshrc
brew --version

Intel Mac なら /usr/local/bin/brew、Linux なら /home/linuxbrew/.linuxbrew/bin/brew に読み替える。brew shellenv は PATH などの環境変数をまとめて設定する(公式ドキュメント(新しいタブで開く))。

3. 使っているシェルを確認する

echo $SHELL

/bin/zsh なら ~/.zshrc、/bin/bash なら ~/.bash_profile(Linux では ~/.bashrc)へ書く。

4. 既定の prefix から動かさない

prefix を独自の場所へ変えると、ビルド済みバイナリ(bottle)が使えずソースビルドになり、失敗しやすくなる。
Homebrew は既定の場所へのインストールを推奨している。

よくある原因

  1. shellenv 未設定: インストール直後に案内される eval "$(... /bin/brew shellenv)" をシェル設定へ書いていない。
  2. prefix の取り違え: Homebrew の既定 prefix は Apple Silicon が /opt/homebrew、Intel Mac が /usr/local、Linux が /home/linuxbrew/.linuxbrew で、記事や手順が想定する場所とずれている。
  3. 設定ファイル違い: ~/.bash_profile に書いたが実際は zsh を使っている、といった食い違い。
  4. 読み直していない: 追記しただけで、シェルを開き直していない。

この手順で直った?