PATHを通すって初めは全く意味不明で理解できないワードだった。
「PATH」ってのも意味不明だし、「通す」ってどういうことだよって思っていた。
「PATHを通す」とは
「PATHを通す」は最も簡単に言うと、「プログラムの場所を調べる場所を決めておく」ということ。
WindowsやUbuntuやMacだろうと何かプログラムを実行するには、その場所が分からないといけない。分からなくても問題ないのは、プログラムを絶対パスで指定して実行するときだけ。
/home/xxxxx/yyyyy/zzzzz/aaa.sh
上記のようなケースの場合はプログラムがどこにあるのか分かるので、PATHがなくとも実行することができる。しかしよく使うプログラムを毎回このように記述しているととても使い勝手が悪い。また、他のプログラムがプログラムを使いたいときもどこにあるか分からない。
絶対パスなしで実行したいときは、当然以下のような書き方になる。
aaa.sh
毎回aaa.shって実行するたびにaaa.shをパソコン全体を探すわけにも行かないし、全体から探した場合同じファイルが何個もあるかもしれない。
PATHを設定することで、プログラムを探す場所を限定して探し出すことができるようになる。
Windowsの場合:PATHを設定する
PATHを設定するには、スタートメニュー→コンピュータを右クリック→プロパティ→システムの詳細設定と設定していく。
その後は、環境変数を開き、PATHを加えて編集する。「新規」から加えれば新しくPATHを加えることになり、編集で行えば既存のものを変更することができる
Ubuntuの場合:PATHを設定する
PATHは通常以下のようにターミナルで確認できる./binや/sbinなどにプログラムがよく置かれているため、PATHに設定されている。
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:
ではPATHの中身を確認できたので、次にPATHを設定する.
$ export PATH=/home/user/aaa:$PATH
$ echo $PATH
/home/user/aaa:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
exportコマンドで設定することができる。上記の例は/home/user/aaaを設定している場合。
注意すべきは$PATHをつけなくてはいけない点。$PATHをつけないと元のPATHの設定を上書いてしまうことになる。つなげるときはコロン:を使って接続していきます。いくらでもつなげられるのでもっと増やすことも可能です。すべてつなげるときはコロンではさむ必要があります。