そもそもPATHとは
PATHは「実行ファイルの場所」を指定することでプログラムを動かすことのできる機能。
PATHには道といった意味がある通りプログラムの大元である実行ファイルの場所(道)を表す。
例えば、MacOsの場合 usr/local/bin といった形でスラッシュ区切りで表す。
記事を書いた経緯
PATHの管理をbash_profile内で行っていたところ zsh: command not found と表示があり、bashは対応していないの?と疑問に思い色々と調べました。すると2年程前のmacOS Catalina以降はデフォルトのshellがbashからzshに変わったのことで急遽、頭の整理も兼ねて記事を書くことにしました。
PATHの復習
よく使うコマンドを載せておきます。
> echo $PATH
改行なしでPATHを表示するので見やすくするにはこのコマンド
> echo $PATH | sed -e 's/:/\n/g'
PATHの追加は2種類コマンドがあります。
> export PATH="通したいパス:$PATH"
個人的にはこっちの方が好き。
> export PATH=$PATH:通したいパス
*永続PATHには通していないのでこの時点で、ターミナルを閉じるとPATHが消える
/usr/libをPATHに追加した結果
ターミナルを閉じると
本命の/usr/libが消えてる!
私が初心者の頃はいちいちPATHの追加を繰り返し行なっていました。また、たくさんPATHを追加するとどれがどれだかわからなくなるので必要最低限の量で収めるのがいいですね!
永続PATHの追加
ようやく冒頭で話したbashがどうこうという話に戻ります。
今までの永続PATHの管理はbash_profileで行なっていましたが、macOS Catalina以降(2020年4月?〜)zshrcファイルで行います。
> open ~/.zshrc
ここの部分にexport PATH="通したいパス:$PATH"を追記すればOKです!
Vimでの操作が苦手な方もやりやすいのでは?
ここで満足して終わる人が多いので注意
最後に環境変数を反映させるコマンドを実行します。
> source ~/.zshrc
ファイルの追記やらをすっ飛ばしていっきに終わらせたい方はこのコマンド!
> echo "export PATH=$PATH:通したいパス" >> ~/.zshrc ; source ~/.zshrc