Linux入門:コマンド操作のきほん
シェル設定ファイル
新しいタブを開くと、さっきの設定が消えている
その場で export した値は、そのシェルの中だけのものです。ターミナルのタブをもう 1 枚開けば、そこには何も引き継がれていません。サーバーに入り直したときも同じで、毎回打ち直すことになります。
そこで使うのが、シェルが起動するたびに自動で読み込む設定ファイルです。ここに書いた行は毎回実行されるので、実質的に「いつでもある設定」になります。
bash には、ログインしたときだけ読む ~/.bash_profile と、シェルを開くたびに読む ~/.bashrc があります。迷ったら ~/.bashrc に書いてください。~/.bash_profile に source ~/.bashrc の 1 行を入れておけば、どちらの入り口から来ても同じ設定になります。
足すのは 2 行だけ
設定ファイルは長くなりがちですが、自分で書き足すのは必要な行だけです。まず、壊したときに戻せるよう控えを取ります。
ターミナル
cp ~/.bashrc ~/.bashrc.bakそのうえで、欲しい行を末尾に足します。ここでは、コマンドが編集画面を開くときに使うエディタを指定してみます。
ターミナル
echo 'export EDITOR=vim' >> ~/.bashrc>> は追記です。> を 1 本にすると中身が全部消えて、この行だけのファイルになります。設定ファイルを触るときの、いちばん多い事故です。書けたかどうかは末尾を見れば分かります。
ターミナル
tail -3 ~/.bashrc
# export EDITOR=vimこのファイルは上から順に実行されます。同じ値を 2 か所で設定していたら、後に書いた方が残ります。設定したはずの値が別のものになっているときは、下の方に同じ名前がもう一度書かれていないかを疑ってください。
書いても、まだ効いていない
書き足した時点では、いま開いているシェルは古い内容のまま動いています。読み直させるのが source です。
ターミナル
source ~/.bashrc
printenv EDITOR
# vimprintenv で確かめるところまでを 1 組にしてください。書いた、読み直した、入っている、の 3 点が揃って初めて完了です。ここを飛ばすと、効いていないのに効いたつもりで先へ進み、あとで原因不明の挙動として返ってきます。
もうひとつ気をつけたいのが、リモートのサーバーで設定ファイルを壊した場合です。書き間違いによっては、次にログインした瞬間にシェルが立ち上がらず、直すために入ることもできなくなります。
サーバーの設定ファイルを編集するときは、いま繋がっているセッションを閉じないでください。別のタブでログインし直して確かめ、駄目なら残っている方から控えを書き戻します。