Skip to content

zsh: command not found: brew の解決方法

問題の概要

Homebrew のインストールが完了したにもかかわらず、ターミナルで brew コマンドを実行すると「zsh: command not found: brew」というエラーが表示される問題が発生しています。これは主に、Homebrew の実行パスが zsh シェルの PATH 環境変数に正しく設定されていないことが原因です。

特に M1/M2/M3/M4 チップ搭載の Mac では、Homebrew のインストール先が従来の /usr/local/bin ではなく /opt/homebrew/bin に変更されているため、この問題が頻繁に発生します。

解決方法

最新のインストール方法(推奨)

まず、最新の Homebrew インストールスクリプトを使用して再インストールすることをおすすめします:

bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

インストール完了後、以下のコマンドを実行して Homebrew を PATH に追加します:

bash
echo '# Set PATH, MANPATH, etc., for Homebrew.' >> ~/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

TIP

brew shellenv コマンドは、Homebrew に必要な環境変数を自動的に設定してくれます。手動で PATH を設定するよりも安全で確実な方法です。

手動での PATH 設定

もし上記の方法で解決しない場合、または手動で設定したい場合は、以下の手順で .zshrc ファイルを編集します:

bash
echo 'export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"' >> ~/.zshrc

変更を反映させるには、ターミナルを再起動するか、以下のコマンドを実行します:

bash
source ~/.zshrc

設定ファイルの確認

複数の設定ファイルがある場合、優先順位によっては期待通りに動作しないことがあります。以下のコマンドで現在の PATH 設定を確認できます:

bash
echo $PATH

Homebrew のパス(/opt/homebrew/bin)が他のパスよりも前に来ていることを確認してください。

注意事項

PATH の順序は重要です。Homebrew のパスがシステム標準のパス(/usr/bin, /bin など)よりも前に来るように設定する必要があります。そうしないと、システムに元から入っている同名のコマンドが優先されてしまう可能性があります。

トラブルシューティング

設定ファイルの場所の確認

zsh の設定ファイルは複数あり、読み込み順序が決まっています:

  • ~/.zprofile:ログイン時に読み込まれる
  • ~/.zshrc:対話型シェル起動時に読み込まれる

以下のコマンドでどの設定ファイルに PATH が設定されているか確認できます:

bash
grep -r "opt/homebrew" ~/.z* ~/.profile

Homebrew のインストール先の確認

Homebrew が実際にどの場所にインストールされているか確認するには:

bash
ls /opt/homebrew/bin/brew

もしファイルが存在する場合は、インストールは成功していますが PATH 設定だけが不足しています。

その他の考慮事項

異なる環境での Homebrew パス

使用しているシステムによって Homebrew のパスが異なります:

bash
/usr/local/bin/brew
bash
/opt/homebrew/bin/brew
bash
/home/linuxbrew/.linuxbrew/bin/brew

ターミナルの設定確認

まれに、ターミナルアプリ自体の設定が原因であることがあります:

  1. ターミナルを開く
  2. 設定(Preferences)を開く
  3. プロファイル(Profiles)タブを選択
  4. シェル(Shell)セクションで「コマンド(完全なパス)」(Command (complete path))が選択されていることを確認

まとめ

「zsh: command not found: brew」エラーは、Homebrew の実行パスが zsh シェルに正しく設定されていないことを示しています。最新のインストールスクリプトを使用し、brew shellenv コマンドを利用して PATH を設定することで、ほとんどの場合この問題は解決します。

設定後は brew doctor を実行して、Homebrew が正しく機能していることを確認してください。