環境変数を書き込むのに.bash_profileとかなにを使えばいいのか迷う

新しく、プログラムをいれたりするとパスを通す必要があったりするんだけど、その時によくでてくるのが

$ export PATH=/usr/local/bin:$PATH

とかってやつ。

これで、ホームディレクトリに.bashprofileとか.profileがあればそこにPATHが書き込まれて有効になるんだけど、書き込まれるファイルの.bashprofileとか.profileとかいったいなにを使えばいいのかよくわかんないので調べてみた。

どうも、それぞれには優先順位があるらしく

  1. /etc/profile
  2. ~/.bash_profile
  3. ~/.bash_login
  4. ~/.profile

という、順番で読み込まれるので、その順番が意識できていればまぁだいたいなんでもいいらしい。

で、/etc/profile 以外のファイルはシステムによっては存在しなかったりするので、パスを追加したりする必要がある時にはこれらの存在を確認しておかないといろいろとめんどくさい。

でもって、.bashprofileが存在しなければ.bashloginを読みにいって、.bashloginもなければ.profileが読まれることになるので、だいたいの場合には.bashprofileを用意しておけばいいことになる。

意図せず、.profileと.bash_profileの両方があって.profileに設定を書き込んでも読まれないことになるので注意が必要。

ちなみに、Macの場合はインストール直後だとどのファイルもないのででターミナルを頻繁に使う人はインストール直後あたりに

$ touch ~/.bash_profile
$ source ~/.bash_profile

とかしておくと幸せになれるとおもう。

Rlated & Feedbacks

http://www.trapon.jp/cms/mt-tb.cgi/323