環境変数,PATHについて調べていたのですが、あやふやだった点をハッキリさせたいと思い質問させて貰いました。
自分のターミナル(fish)でecho $PATH
と打ち込むと、以下のように表示されます。
/usr/local/bin/ /usr/local/bin /usr/bin /bin /usr/sbin /sbin /opt/X11/bin
ここのフォルダ内に存在する実行ファイルは基本的に、ターミナルからファイル名の指定でコマンドが実行できますが、例えば「/usr/local/bin/」ここのパスを「.bash_profile」や「.bashrc」に登録をすることで、「/usr/local/bin/」ここのフォルダ内のファイルがコマンドとして使えるようになるのだと思います。
しかし、自分の「.bash_profile」や「.bashrc」には、/usr/local/bin/
ここのパスが記載されていませんでした。
「.bash_profile」の内容は下記になります。
export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_PYTHON=/Users/tt-a/.pyenv/shims/python3 export PROJECT_HOME=$HOME/Devel export PATH="$HOME/.pyenv/shims:$PATH" export PATH="$PATH:/usr/local/bin/docker-machine" export PATH="$HOME/.composer/vendor/bin:$PATH" source $PYENV_ROOT/versions/3.7.3/bin/virtualenvwrapper.sh export PATH="$HOME/.nodebrew/current/bin:$PATH" # added by Anaconda3 2019.10 installer # >>> conda init >>> # !! Contents within this block are managed by 'conda init' !! __conda_setup="(CONDA_REPORT_ERRORS=false '/Users/tt-a/opt/anaconda3/bin/conda' shell.bash hook 2> /dev/null)" if [ $status -eq 0 ]; \eval "$__conda_setup" else if [ -f "/Users/tt-a/opt/anaconda3/etc/profile.d/conda.sh" ]; . "/Users/tt-a/opt/anaconda3/etc/profile.d/conda.sh" CONDA_CHANGEPS1=false conda activate base else \export PATH="/Users/tt-a/opt/anaconda3/bin:$PATH" end end unset __conda_setup # <<< conda init <<<
さらに、「.bashrc」の中身も開きましたが、空となっていました。
疑問点なのですが、何故「/usr/local/bin/ 」のフォルダなどが存在していないにも関わらず、コマンドとして「/usr/local/bin/ 」内のファイルが指定できるのでしょうか...?
※環境について
MacOS 10.14.6
ターミナル: fish