[[Pocketstudio.jp Linux Wiki]]

* パス(PATH)の確認と設定方法は? [#j4f469cb]

#contents

** そもそもパス(PATH)って? [#v6fc5f1d]

 パス(PATH)は英語で『 経路 』という意味があります。経路というよりは、むしろ、コマンドを実行するプログラムのある場所と考えた方が良いかもしれません。
 簡単に(楽に)コマンドを実行するために、パスの設定をする事を『 パスを通す 』と言います。

 たとえば /usr/local/pgsql/bin/psql というコマンドを psql とだけ入力して実行させるとします。この場合 psql というコマンドがある場所が /usr/local/pgsql/bin です。

 つまり、/usr/local/pgsql/bin にパスを通す(環境変数 PATH で指定)事で、【 psql 】と入力するだけで、実行することが出来るようになります。

** パスを確認するには? [#s86fedca]

 コマンド【 echo $PATH 】(もしくは、env | grep PATH)でどこにパス(PATH)が通っているか確認できます。

 $ echo $PATH
 /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/vine/bin:/home/zem/bin

 パスは『 : 』(コロン)で区切られています。
 この例では
- /usr/local/bin
- /bin
- /usr/bin
- /usr/X11R6/bin
- /usr/vine/vin
- /home/zem/bin
 にパスが通っています。

** パスの優先度は? [#z6ad2007]

 パスの優先度は左の方が『 優先 』されます。
 コマンド『 echo $PATH 』あるいは『 env | grep PATH 』で出てきた左が優先されます。

 たとえば、''/usr/local/bin''/perl と ''/usr/bin''/perl があるとします。
 環境変数 PATH で ''/usr/local/bin'' の方が優先されると、実際に実行されるコマンドは ''/usr/local/bin''/perl となります。

** パスの設定方法 [#v423b3d1]

 環境変数 $PATH を書き換えます。
 たとえば /usr/local/pgsql/bin へパスを通したい場合

 $ PATH=$PATH:/usr/local/pgsql/bin
 $ export PATH

 このように入力します。『 $PATH 』とは "現時点で環境変数 PATH に設定されているパス名"です。
 これまで "/usr/local/bin" にパスが通っている場合は、"/usr/local/bin" に加えて "/usr/local/pgsql/bin"がパスに加えられます。
 複数のパスを加えるためには : で区切って指定します。
 /usr/local/mysql/bin も一緒に指定する場合は次のようになります。

 $ PATH=$PATH:/usr/local/pgsql/bin:/usr/local/mysql/bin
 $ export PATH

 ちなみに、コマンド『 export PATH 』は必須。環境変数 PATH をエクスポート(出力)=環境変数を設定する、という意味があります。
 コマンドは『 export PATH=$PATH:/foo 』のように1行に纏めてもかまいません。

** ログインする度に自動で設定するには? [#da73b159]

 毎回ログインする度にパスの指定をするのは面倒なものです。
 その場合、ホームディレクトリ配下にある .bash_profile を編集します。
 .bash_profile の中に PATH=$PATH:〜 と export の記述をするだけで、毎回ログインするたびに自動で環境変数が設定されます。

 環境変数の設定をサーバ内の全ユーザに対して指定したい場合は /etc/profile ファイルを開き、末尾に PATH=$PATH:〜 と export を追加する方法が確実でしょう。
 各ユーザの .bash_profile の中には、ログイン後に /etc/profile ファイルを読み込むような記述があるからです。


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS