環境変数PATHを確認/追加する方法

現在、FjordBootcampにてプログラミングを学習中のshoynoiです。

今回はFjordBootcampのカリキュラムの中の一つである黒い画面(Terminal)の基本について。 Webデザイナーの為の「本当は怖くない」“黒い画面”入門 - FJORD,LLCを読み進め、その中で学習したPATHという機能についてまとめていきます。

PATHを確認して通してみる

普段ターミナルで使用するコマンドは様々なディレクトリに格納されています。コマンドを打ち込むと、該当するコマンドの実行ファイルがあればそれを読み込み、結果がターミナル上に表示されます。 例えばlsコマンドは/bin/にありますが、このコマンドを実行する場合はTerminalに$ /bin/lsと記述することでプログラムが実行されます。

f:id:shoynoi:20190111124013p:plain

しかし、コマンドを使用するときに毎回$ /bin/lsのように記述するのはとても面倒です。そこで、Shellに予め実行ファイルがある道(PATH)を教えてあげることができます。すると、実行ファイルまでのパスを省略してファイル名(コマンド)のみで実行できるようになります。

PATHを確認する

PATHは環境変数の1つとして定義されています。 環境変数はローカル環境内で設定・参照できるようにした特別な変数のことをいいます。 Terminalにenvと打ち込むと現在設定されている環境変数の一覧が羅列されます。 一部を抜粋します。

$ env
...
USER=akira
...
PATH=/usr/local/opt/mysql@5.7/bin:/Users/akira/.rbenv/shims:/Users/akira/.rbenv/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
...
HOME=/Users/akira
...

環境変数名と値がイコールで結ばれています。 PATHについてみてみましょう。スラッシュやコロンがたくさん並んでいて複雑に見えます。 PATHは、それぞれのPATHを:(コロン)で区切って並べます。 先程の/bin/lsのPATHはすでに:/bin:として設定されていることがわかります。 このPATHの機能のおかげでコマンド(プログラム)の場所を意識することなくPCに直接指示を与えるようにコマンドを使用することができます。

f:id:shoynoi:20190111124010p:plain

ちなみに、各環境変数echo $環境変数名でその中身を表示することができます。

f:id:shoynoi:20190111123931p:plain

PATHを設定する

PATHは予め設定されているものもありますが、独自にPATHを設定することができます。 例えば

export PATH="$PATH:/Users/akira/bin"

環境変数$PATHに対して:(コロン)で区切り、新しくパスを追加しているのがわかると思います。 このようにexportコマンドを使って環境変数PATHに追加したいパスを記述することでそのディレクトリ内のプログラムを直接実行できるようになります。

これを「パスを通す」といいます。