前の節でシェルの環境変数やエイリアスの設定の仕方を述べましたが,シェルにログインする度にこれらを設定し直すのは大変です. シェルが起動されるときに読み込まれる初期設定ファイルを使うと,ログイン時に自動で設定を行うことができます.
bash の場合には ホームディレクトリ直下にある .bashrc と .bash_profile という二つのファイルを初期設定ファイルとして用います.厳密にはこの二つのファイルは役割が違うのですが,ここでは設定を .bashrc に書くことにしましょう.
例えば,エイリアスと変数を自分の好みに設定してみましょう.
export EDITOR=emacs alias more=less alias mroe=more alias ls='ls -F' alias ll='ls -l' alias rm='rm -i' export PATH=$HOME/bin:$PATH
このように .bashrc に書いた上で保存しておきます.もし既に .bashrc があるならば,上のものを末尾にでも書き加えておきます.
.bashrc を書き換えただけでは,その中身はまだシェルの挙動に反映されません.そこで新しいシェルを開いてみましょう.例えばターミナルウィンドウを新しく開けば新しくシェルが起動されます.(なお,現在実行中のシェルに反映させるには
. .bashrc
これらのエイリアスは反映されたでしょうか?たとえば
ll
としただけで
ls -l
としたのと同じ表示になれば成功です.次回シェルを起動するときには,既に .bashrc が存在しますから,勝手に読み込んでくれます.
この初期設定ファイルはかなりのカスタマイズが可能です.上級者はシェルスクリプトなどをここに書いて,環境をうまく制御することもあります.うまい設定をまねることも上達への道かも知れません.また,初期設定ファイルは非常に重要なファイルです.変更するのに過度に慎重になる必要はありませんが,場合によってはシェルがうまく起動できなくなる可能性もあります.何か問題が起きたら詳しい人に相談してみて下さい.
.bashrc と .bash_profile という二つのファイルは役割が違うのですが.bash_profileはログインシェルを立ち上げたとき(新しくターミナルを開くなど)に実行されますので,.bash_profileから.bashrcを呼ぶように設定すれば,全て.bashrcでも大丈夫です.具体的にはホームディレクトリに .bash_profile という名前のファイルを作り,そこに
. $HOME/.bashrc
と書いておきます.
csh や tcsh では .cshrc あるいは .tcshrc がシェルの初期設定ファイルです.文法なども異なるので注意して下さい.csh 系シェルの場合,
source .cshrc