LoginSignup
31
32

bash: : command not found 〜どんなコマンドを打っても抜け出せない地獄〜

Last updated at Posted at 2020-04-22

#はじめに
このエラーは本当に良く見ますが、原因は色々といったところなのですかね?
でも、ホンマに毎回このエラーを見るたびに残念な気持ちになってます。
今回はそのエラーの中でも重複して抜け出せなくなったので原因を調べて解決していきます。

#エラーの内容は?

-bash: rbenv: command not found
-bash: brew: command not found
-bash: curl: command not found

今回ですが、macのターミナルで行っていたのですが、そこでのエラーです。
homebrewはインストール済みだったのはずが-bash: brew: command not foundだったので、
あれ?インストールされてない?と思いもう一度公式ページからhomebrewをインストールしようとしたところ-bash: curl: command not found
その後も、同じようなエラーの連続

-bash: rbenv: command not found
-bash: brew: command not found
-bash: curl: command not found

もうどうしたことやら、、、

#エラーの原因は?
原因は、
####『パスの通し方』でした。

つまり、

export PATH="$PATH:/opt/local/bin"

こんなやつですね。

恥ずかしながら、エラーを解決していく段階で適当にコマンドを打っていたせいでおかしなことになっていたみたいです。。。

自分が『何故そのコマンドを打つのか?』ってところは本当に基本的ながら大事ですね。

もう一度、パスって何なのか?ってところから勉強し直しました。
(パスが何か分かっている方は、『パスって何?何のために?』の段落は飛ばしてください。)

#パスって何?何のために?
まず、パスとは
####環境変数($PATH)の記述を変えて、コマンド検索パスを追加することです。

ん〜、意味がわからない。

とりあえず、環境変数から。
###ー 環境変数とは何かと言うと、
#####ローカル環境のOSが持っている変数のこと。
つまり、
#####自分のパソコン上の全てで使える変数
環境変数に設定されている値は、すべてのプログラムで使えるみたいです。

では、コマンド検索パスってのは何なのでしょうか?
###ー コマンド検索パス
#####『ターミナルがコマンドを検索するためのパスの事です』
もっと噛み砕くと、
『コマンドを打ってファイルを読み込む』
何故そんなコマンドを打って探すのかと申しますと、
#####パソコンの中には無数のファイルがあります。
そんな中からファイルを探してくるために必要なのが『パス』です。
つまり、shell(ターミナル)に実行ファイルがある場所を探してくれる役割があるのが『パス』です。

実際にコマンドを打ってみるのが早いですね!!!
そこで、この記事を参考に進めていたのですがとても理解しやすかったので是非!

それでは、パスを通し直してエラー解決していきましょう!

#エラー解決法は?
exportで通しているだけなら、ターミナルを一度閉じれば解決するみたいです。

それも解決しない場合は以下を行ってください。

まず、

$ echo $PATH ←現在のパスの確認

これで現状の実行ファイルのパスが確認できます。
そのパスに
「/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:」
が含まれていない場合は

$ echo export PATH='/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH' >> ~/.bash_profile

$ source ~/.bash_profile

$ exit

これで解決しました。

#参考
・ターミナルで "command not found"のエラーにしかならない時。
https://alis.to/kusshi/articles/3ldp4b5Rvmrw

・Linux入門 ~「パスを通す」とは~
https://qiita.com/Naggi-Goishi/items/2c49ea50602ea80bf015

31
32
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
31
32