LINUX修改path環境變量

注:本文僅因學習需要保留,如有侵犯你的版權,請留言,將盡快刪除。

日期:2012-12-26

一、修改配置文件的方法

()修改系統級PATH環境變量
1,in your /etc/profile,add:
export PATH=$PATH:/path1:/path2:/pahtn
2,run:
source ./etc/profile

()、修改用戶級別PATH環境變量先進入用戶目錄:
#cd /home/aaa
#vi .bash_profile
或者.profile
add ...
save
# source .bash_profile
其實都差不多了,一個是全局的PROFILE一個是單獨用戶的profile

二、命令行狀態下直接修改環境變量修改環境變量

bash下用export,csh下用setenv。比如:
export PATH=$PATH:/usr/local/bin

'$PATH' '$PS1'一樣,也是環境變量。

輸入set將列出所有當前定義的環境變量。您看到的這些環境變量在 shell 的配置文件中定義,可能是用戶自己的配置文件,也可能是由'root'通過'/etc'下面的系統級文件定義的。如果您使用 X ,更多的一些變量將由 X 、您的窗口管理器或桌面環境的啓動文件配置。

如果對這些設置不很清楚,您暫時最好不要隨便改動。瞭解如何改變 $PATH 變量很有用,因爲這個變量決定了 shell 將到哪些目錄中尋找命令或程序。如果要執行的命令的目錄在 $PATH 中,您就不必輸入這個命令的完整路徑,直接輸入命令就可以了。一些第三方軟件沒有將可執行文件放到 Linux 的標準目錄中。因此,將這些非標準的安裝目錄添加到 $PATH 是一種解決的辦法。此外,您也將看到如何處理一般的環境變量。

先,作爲慣例,所有環境變量名都是大寫。由於 Linux 區分大小寫,這點您要留意。當然,您可以自己定義一些變量,如'$path''$pAtH',但 shell 不會理睬這些變量。

第二點是變量名有時候以'$'開頭,但有時又不是。當設置一個變量時,您直接用名稱,而不需要加'$'

PATH=/usr/bin:/bin:/usr/local/bin:/usr/X11R6/bin

要獲取變量值的話,就要在變量名前加'$'

echo $PATH

/usr/bin:/bin:/usr/local/bin:/usr/X11R6/bin

則的話,變量名就會被當作普通文本了:

echo PATH

PATH

處理 $PATH 變量要注意的第三點是:您不能只替換變量,而是要將新的字符串添加到原來的值中。在大多數情況下,您不能用'PATH=/some /directory',因爲這將刪除 $PATH 中其他的所有目錄,這樣您在該終端運行程序時,就不得不給出完整路徑。所以,只能作添加:

PATH=$PATH:/some/directory

樣,PATH 被設成當前的值(以 $PATH 來表示)+新添的目錄。

到目前爲止,您只爲當前終端設置了新的 $PATH 變量。如果您打開一個新的終端,運行 echo $PATH ,將返回舊的 $PATH 值,而看不到您剛纔添加的新目錄。因爲您先前定義的是一個局部環境變量(僅限於當前的終端)。

要定義一個全局變量,使在以後打開的終端中生效,您需要將局部變量輸出(export),可以用'export'命令:

export PATH=$PATH:/some/directory

現在如果您打開一個新的終端,輸入 echo $PATH ,也能看到新設置的 $PATH 了。請注意,命令'export'只能改變當前終端及以後運行的終端裏的變量。對於已經運行的終端沒有作用。

了將目錄永久添加到您的$PATH ,只要將'export'的那行添加到您的'.bash_profile'文件中.
#vi ~/.bash_profile

請不要在 '.bashrc'中設置 PATH ,否則會導致 PATH 中目錄的意外增長。您每次打開一個新的 shell '.bashrc'都會作用。所以如果在該文件中添加目錄,您每次打開一個終端,目錄又會被添加。這將導致 PATH 變量由於目錄複製,不斷地增長。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章