たなちの備忘録

自分の知識をストックしていくためのブログ

パスを通すとは?意味と実例

スポンサーリンク

こちらの記事がよかったので、自分がまた使えるように残しておく。

qiita.com

パスを通すとはどういう意味?

環境変数($PATH)の記述を変えて、コマンド検索パスを追加することです。

環境変数は、ローカル環境において使える変数でそのひとつ $PATH を設定する。

export

環境変数を定義する。

$ export TEST="hoge"
printenv

環境変数を参照する。引数を設定しなければ全ての環境変数が表示される。

$ printenv TEST
hoge
unset

環境変数を削除する。

$ unset TEST
hoge

コマンド検索パスとは?

コマンド検索パスとはshell(ターミナル)がコマンドを検索するためのパスです。

普段使っている cd や mkdir などは
/home/username/bin/cd や /home/username/bin/mkdir のファイルを実行しているだけ。で、$PATHを通すことでそれらのファイルパスをいちいち指定しなくても使えるようにしてくれている。

実際に$PATHの中身を見てみましょう。

$ printenv PATH

僕の場合では以下のような出力結果になりました。
/Users/naggigoishi/.rbenv/shims:/Users/naggigoishi/.pyenv/bin:/Users/naggigoishi/.phpbrew/php/php-5.6.23/bin:/Users/naggigoishi/.phpbrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/bin:/usr/bin/xcodebuild:/usr/local/sbin

ここでは、パスが:でわけられています。なのでわかりやすく表示すると以下のようになります。

/Users/naggigoishi/.rbenv/shims
/Users/naggigoishi/.pyenv/bin
/Users/naggigoishi/.phpbrew/php/php-5.6.23/bin
/Users/naggigoishi/.phpbrew/bin
/usr/local/bin
/usr/bin
...省略

実例

次のコマンドを実行する。

$ export PATH="$PATH:/home/username/bin"

すると「/home/username/bin」以下のファイルをコマンドから実行できるようになる。bin 直下にシェルスクリプトなんかを置けばどこからでも実行できるようになる。