もう迷わない!Mac、Linuxでパスを通すための環境変数の設定について

ある程度プログラミングや開発環境の整備などを経験された方は、「パスを通す」という作業をしたことがあるのではないでしょうか?

例えば次のようなコマンド

export PATH="$PATH:/Users/hogehoge/mogumogu"

これでPATHが設定されます。

今回はこれが一体なにを行なっているものなのか、まとめます。

 

「パスを通す」とは

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

環境変数はローカルPCのなかで使える特別な変数です。envというコマンドで覗き見ることができます。

envコマンドの実行結果

↑にPATHという環境変数が設定されているのが分かります。なにやらディレクトリのパスのようなものが:で区切られて代入されています。

PATHは実行したいコマンドのパスを指定する環境変数で、代入されている値はコマンドの実行ファイルが置かれているディレクトリに繋がっています。PATHにパスを追加すれば、その追加したパスも検索対象となるわけです。

 

環境変数について

環境変数はexportコマンドで一時的に定義することができ、例えば次のようにすると、TEST_ENV_VARという環境変数が使えるようになります。

export TEST_ENV_VAR="This is a test environment variable."

exportコマンドによる環境変数の定義と中身の確認

コンソールで直接打ち込んだ環境変数は一時的なものなので、再度sshしなおすと消えて無くなります。恒久的に利用したい場合は~/.bashrc~/.bash_profileなどに記入する必要があります。

 

PATHの通し方

PATHの確認

現在のPATHを確認します。

printenv PATH

 

PATHの設定

下記のようなコードを~/.bashrc~/.bash_profileなどの最終行に追記し、sourceコマンドで設定を反映させます。

# ~/.bashrcや~/.bash_profileに追記
# A_PATH_WHAT_YOU_WANT_TO_ADDを追加したいパスに置き換えます。
export PATH="$PATH:/A_PATH_WHAT_YOU_WANT_TO_ADD"
# 設定を反映させる
source ~/.bashrc

 

PATHの設定その2

PATHはデフォルトで/usr/local/binなどのパスがすでにセットされているので、コマンドの実行ファイルをそのディレクトリに置くことで、PATHを通すのと同じ効果が得られます。~/.bashrcを追記するのが面倒な場合などは適当なデフォルトのパスに置いてあげると良いでしょう。

 

PATHの修正

PATHをリセット

unsetコマンドで対象の環境変数を空っぽにできます。リセットするとコマンドを実行できなくなりますが、再度PATHを設定し直す、またはコンソールを再起動することで初期状態に戻ります。

# $はいらない
unset PATH

 

PATHの修正

Vimなどのエディタで~/.bashrc~/.bash_profileへ記入したコードを削除、またはコメントアウトします。

# vimで開いて該当のコードを削除
vim ~/.bashrc

ターミナルを再起動するかsourceコマンドでプロファイルを再読みすればOKです。

source ~/.bashrc

 

追加するコマンド検索パスの優先順位を高くする

コマンド検索パスには優先度があり、設定された$PATHの冒頭から優先されます。追加するコマンド検索パスの優先度を高くしたい場合は、以下のように$PATHの冒頭にパスを通します。

export PATH=A_PATH_WHAT_YOU_WANT_TO_ADD:$PATH

 

まとめ

PATHの通し方と環境設定についてまとめました。やったね!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください