2013-10-07 11 views
6

PATHを設定すると、最後に:${PATH}が必要なのはなぜですか?bash_profileのパスを設定する

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" 

私はこれにパスを追加すると、私は新しい行に行くことなくPATHを追加するにはどうすればよい

PATH=$PATH:... 

を行うだろう。つまり、元のPATHステートメントにPATHを追加するにはどうすればよいですか。

たとえば、次のすべてを最初の行に入れる場合は、これは:${PATH}の部分とどのように相互作用しますか?

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

答えて

16

前面または$PATH環境変数の最後に既存のパスを追加するとの違いがあります。 bashが実行パスを解決する方法は、リストの先頭から始めることです。

PATH="/dir1/bin:/dir2/bin" 

そして、彼らの両方がそれに実行可能test.shを持っている、あなたはtest.shを実行すると、そのディレクトリがで最初に表示されるので、それから、それは/dir1/bin/test.shに1を実行します:あなたがあなたのパスにこれらの2つのディレクトリを持っている場合それは意味しますパス。

さらに、${PATH}$PATHと同じです。

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" 

は、単にパスの前部に/Library/Frameworks/Python.framework/Versions/2.7/bin

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

は、単にパスの端部に/usr/local/mysql/binを追加して添加されます。

どのようにして1行で行うのですか?このようなもの:

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}:/usr/local/mysql/bin"