mt0518
@mt0518

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Mac ターミナルについて /Users/XXX/.zshrc:4: no such file or directory: /opt/homebrew/bin/brew

解決したいこと

数日前からMacでターミナルを開くと、
/Users/XXX/.zshrc:4: no such file or directory: /opt/homebrew/bin/brew
という文字列が延々と表示されて止まらなくなり、何のコマンドも入力できない状態です。ターミナルの初期化の方法を試しても何も変わりません。解決方法を教えて下さい。
ターミナルは、Homebrewやffmpegなどをインストールして使っており、音楽や動画をたまにダウンロードする程度のコンピュータ言語などはほぼ知らない初心者のため、分かりづらい文章だと思います。すみません。

自分で試したこと

リセット、ハードリセット、com.apple.Terminal.plistをFinderから削除は行いました。

0

2Answer

原因は分かりませんが Homebrew の実行ファイルが消えていますね。

文字列が延々と表示されて止まらなくなり、何のコマンドも入力できない状態です。

何もしなくても文字列が何行も表示され続けて入力する隙がないということですか?普通その処理がループすることはないので、表示されるにしても1行だけになりそうですが。ともかく、 .zshrc を書き換えて Homebrew 関係のコードを消せばエラーは止まります。

何か入力できそうなら、 open -a TextEdit ~/.zshrc を実行すればテキストエディットで .zshrc が開くので、その内容をここに貼ってください。消すべき箇所を指摘しますので、テキストエディットで書き換えて保存すれば完了です。今後も Homebrew を利用したいなら再度インストールしてください。

何も入力できないなら、ターミナルを開いてメニューバーの「ターミナル」→「設定…」で設定画面を開き、「プロファイル」→「シェル」の「コマンドを実行:」にチェックを入れて横に bash と入力し、下の「シェル内で実行」のチェックを外してください。以下の画面の通りです。

Screenshot 2024-12-19 12.42.02.png

これでターミナルの新規ウインドウを開くと入力できるようになっているはずです。引き続き上記のテキストエディットを開く手順を踏んでください。修正が終わって元に戻すときは「コマンドを実行:」のチェックを外すだけでいいです。

2Like

Comments

  1. @mt0518

    Questioner

    こんにちは。分かりやすく教えていただきありがとうございます。テキストエディットを開くことができました。以下コピペしたものです。コードの挿入方法を調べて貼ったのですが、貼り方間違っていたらすみません。よろしくお願いいたします。

    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    eval "$(/opt/homebrew/bin/brew shellenv)"
    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    unsetopt nomatch
    unsetopt nomatch
    setopt nonomatch
    setopt +o nomatch
    source ~/.zshrc
    
    
  2. 横から失礼します.とりあえず確実に事故ってはいるので,取り急ぎ末尾のsourceの行はまっさきに消してください.
    以下参考にどうぞ.

  3. 貼り方はそれで大丈夫です。4行目の eval "$(/opt/homebrew/bin/brew shellenv)" を消して保存すれば直ります。5行目以降は1〜3行目と内容が重複していて無駄なので、5行目の export PYENV_ROOT="$HOME/.pyenv" から unsetopt nomatch まで(これも同じものが2行あるので1行は消せます)合わせて削除できます。

  4. @Verclene ありがとうございます、 source ~/.zshrc で自分自身を読み込むせいでループしているわけですね。

エラーメッセージでググってヒットする記事を読むとかしました? やってなければ質問する前にそれをやってください。ググって調べて関係ありそうな記事の対策を取ったが効果がなかったということなら、どの記事かなどの情報を追記してください。

0Like

Your answer might help someone💌