開発 備忘録 .bashrcと.bash_profile

[fusion_builder_container hundred_percent=”yes” overflow=”visible”][fusion_builder_row][fusion_builder_column type=”5_6″ last=”no” spacing=”yes” background_color=”” background_image=”” background_repeat=”no-repeat” background_position=”left top” border_size=”0px” border_color=”” border_style=”” padding=”” class=”” id=””][fusion_text]このエントリも自分のためのものです。
bashとは、Bourne-Again Shellの略称です。Macにおいても、他のUNIX系OS同様、/bin/shがbashの本体です。
bashの設定ファイルは、ログインシェルをbashにしている場合、ログイン時に以下のような順番で設定ファイルが読み込まれるそうです。

  1. /etc/profile(すべてのユーザに適用される環境変数)
  2. ~/.bash_profile
  3. ~/.bash_login
  4. ~/.profile

2番目の以降のファイルんい関しては、存在する場合も、存在しない場合もあります。最初に読み込まれる /etc/profile は各ユーザーごとの設定はするべきでありません。
したがって、その次に読み込まれる ~/.bash_profile で環境変数を設定します。ここでいう環境変数とは、

  • パスを通す
  • エイリアスを定義する

ことを示します。注意点としては、.bash_profileは、ログイン時に読み込まれるので、再度読み込むためには、
$ source ~/.bash_profile
 
などを叩き再度読み込む必要があることです。
同様に、パスを設定できるファイルに、.bashrcがあります。この.bashrcは、bash が起動された時に、そのプロセスに読み込まれるファイルです。読み込まれるタイミングが異なるわけです。例えばコマンドラインで
$ bash
のようにして新しく bash を起動する度に毎回読み込まれるファイルになります。
以上のことから、~/.bash_profile と ~/.bashrc の使い分けは

  • ログイン時に一度設定したいもの:~/.bash_profile
  • bashを起動するたびに設定したいもの: ~/.bashrc

ということになる。[/fusion_text][/fusion_builder_column][fusion_builder_column type=”1_6″ last=”yes” spacing=”yes” background_color=”” background_image=”” background_repeat=”no-repeat” background_position=”left top” border_size=”0px” border_color=”” border_style=”” padding=”” class=”” id=””][fusion_text]
[/fusion_text][fusion_text]
[/fusion_text][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]