WindowsユーザーのためのPATH講座
なんか、UNIXやMS-DOSを知らないけどgccのためにCygwin使っている人が多い感じなので、パスについて簡単に書いておきます。
まず、/foo/barという実行ファイルがあったとして、bashから起動するには、
/foo/bar
とします。
毎回フルパスで指定するのは面倒なんで、環境変数PATHの値を「/foo」にします。
そうすると、
bar
だけで呼べるようになります。
肝心のPATHの設定方法は、
PATH=/foo export PATH
です。
一行目はシェル変数PATHの値を「/foo」にしています。
二行目はシェル変数PATHの内容を環境変数として見えるようにしています。
この方法はsh/bash共通のものですが、bashの場合は短縮形で、
export PATH=/foo
とも書けます。
PATHに複数の値を設定する場合は「:」で区切ります。
PATH=/usr/bin:/bin
この場合、プログラムは「/usr/bin」、「/bin」の順に探索されます。
whichコマンドを用いるとどのパスが使われたかが分かります。
シェル変数の内容を展開するには「${名前}」とします。
echo ${PATH}
とすればPATHの内容を確認できます。
あるいは、
env
とすれば現在の環境変数の一覧が表示されます。
環境(環境変数の集合)は現在のプロセスとその子プロセスに適用されます。*1
これはbashを終了したら、変更内容が元に戻ってしまうことを意味します。
bashを起動するたびに行う設定があれば起動スクリプトに書きます。
個人用の設定であればホームディレクトリの.bashrcファイルに書いておくのが便利です。
.bashrcファイルの末尾に
PATH=/foo:${PATH}
と書いておけばシステムの既定のPATHに/fooを追加することができます。
*1:子プロセスの起動時に別の環境を設定することも出来ます。