MacOSXで.bashrcに書いたパスを通す方法
パスを通そうとしてハマったついでに、いろいろ教えてもらって「ほお!」と思ったことがあったので、忘れても大丈夫なようにメモ :-)
今回初めて知ったのが、パスがどのタイミングで読まれているか、というお話し。まず、ログインすると、ログインシェル*1が起動されます*2。そのログインシェルがbashだった場合*3、/etc/profile*4→.bash_profile(ローカル*5)→.bashrc(ローカル)→/etc/bashrcの順番で読み込まれます。
そこで今回パスを通そうと$HOME/.bashrcにexport PATH=$PATH:***と書いてみたけど、通らない :-0 なぜだろうってなっていたら、この記事を教えてもらいました(参考)http://memo358.blog18.fc2.com/blog-entry-30.html)。
これによると、$HOME/.bash_profileに$HOME/.bashrcを見るように書いてあげないと、$HOME/.bashrcを見てくれないらしいです。そこで、参考記事にある通り、$HOME/.bash_profileに下記を追記。そうしたら、ちゃんと$HOME/.bashrcに書いたパスが通るようになりました。よかった! :-)
if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi
ちなみにパスを通すというのはどういうことかというと、例えば/abc/直下にあるd.exeというファイルを便利に起動するために、/abc/へのパスを通しておくと、コマンドで叩くときに/abc/d.exeとしなくても、d.exeだけで起動してくれます。これは、d.exeというファイルがあるかどうか、パスを設定しているすべての場所を探して、存在すれば起動してくれる、ということをしてくれるからなのだそう。つまり、パスを設定すればするほど、探しまわる範囲が広くなる、ということらしいです。ほお! :-0
おまけメモ【ログインシェルを確認する方法】
システム環境設定→アカウント→左下の鍵でロック解除→(マイアカウント上で右クリック)→詳細オプション→ログインシェル
参考)http://d.hatena.ne.jp/shinya_ohtani/20090208/1234061692