Help us understand the problem. What is going on with this article?

zshを使っていてbrewやanyenvが「zsh: command not found」した時の対応メモ

More than 1 year has passed since last update.

職場の開発チームがiTerm2とzshの組み合わせで使っていて、それに倣ったところとっても快適だったので、自分のPCの環境にも適用しました。
それまでターミナルをおっかなびっくり触っていた身としては、視覚的にとてもわかりやすくなり、怖いという気持ちがかなり軽減されました。うれしい🙂

ですが、これまでインストールしていたbashやanyenvなどが軒並みエラーを吐いて動かなくなり、こりゃ大変だと慌てて調べてなんとかした時の覚書です。
(ネタバレ:全部設定ファイルのパスを書き換えたら解決しました)

brew

どんなエラーが出たか

brew -vなどのコマンドを実行すると「zsh: command not found: brew」と出るようになりました。
ためしにbashに切り替えてから同じコマンドを実行するとそちらでは問題なく動いていたので、zshの設定がコケてるのだなと思いました。

試したこと1:パスを書き換える

zshが「command not found」と云う(10/6現在は削除されていました)を参考にパスの書き換えを行いました。
//から始まるコメントを除く、以下コマンドを上から1行ずつ実行していきます。

// 今現在のパスを確認
echo $PATH
// usr/lobal/binが足りなかったので足した
PATH=/bin:/usr/bin:/usr/local/bin:${PATH}
export PATH
// パスが書き換わったか確認
echo $PATH
// brewがきちんと動くか確認
brew -v

結果としてはbrewはきちんと動きましたが、その後タブやPCを落とすとリセットされてしまいました。
毎回書き換えるのはさすがに辛いので、設定を保存できないか探しました。

試したこと2:zshの設定ファイル(.zshrc)を書き換える

bashからzshに移行したときのメモ のHomebrewの項目を参考に、User/ユーザー名/直下にあるzshの設定ファイルである.zshrcexport PATH=/usr/local/bin:$PATHを書き込みます。

// .zshrcファイルに一文を書き込む
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.zshrc
// brewがきちんと動くか確認
brew -v

試しにタブを閉じたりPCを再起動を何度か試しましたが問題なく動きました。
気分は祝杯モードです!超スッキリ🍻🍻🍻🍻🍻

anyenv

どんなエラーが出たか

確かVue cliをインストールしようとした時だったと思いますが、vue initコマンドを実行したところで「zsh: command not found: anyenv」とエラーが出ました。
先のbrewを解決した直後だったので「何回この作業しなきゃいけないの…」と心が折れかけつつ、でもやらないと先に進めないので足取り重く調べました。。

試したこと:.zshrcのパスを書き換える

過去にインストールしたのに何で?と思ったけど、こちらもやっぱりパスが通ってなかったようです。
以下の記事を参考にパスを通します。
anyenvをインストールする -- blog.10rane.com

本家サイトのReadmeファイル内、INSTALLにある2〜4行目(1行目は既に終わっているので飛ばす)にある~/.your_profileをすべて~/.zshrcに変えながら1行ずつ実行していきます。

これが

// 1行目は省略
echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.your_profile
echo 'eval "$(anyenv init -)"' >> ~/.your_profile
exec $SHELL -l

こうなります。

// 1行目は省略
echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(anyenv init -)"' >> ~/.zshrc
exec $SHELL -l

exec $SHELL -lでターミナルを再起動したあとanyenvを実行したときに「Usage:」から始まる長文が表示されたら成功です。

以上です。
お疲れ様でした!!!🍻🍻🍻🍻🍻

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした