Environment-Variables
關於環境變數的問題
我在我的 centos6 上安裝了 Oracle jdk7。我注意到 /etc/profile 有以下幾行:
#below lines are added for Java export JAVA_HOME="/usr/java/latest" ## export JAVA_HOME JDK ## export JAVA_HOME="/usr/java/jdk1.7.0_75"
為了測試我對環境變數和 PATH 的假設,我註釋了上面的所有行(導出行)。我試圖
/etc/profile
通過採購來載入新的. /etc/profile
並發布echo $JAVA_HOME
;它仍然返回上述路徑。所以,我重新啟動了機器,因為源不起作用。重新啟動後,
echo $JAVA_HOME
沒有返回任何內容,這是預期的。Java沒有什麼~/.bash_profile
。但是如果我發出命令:
java -version
在shell上,它仍然返回[root@localhost ~]# java -version java version "1.7.0_75" Java(TM) SE Runtime Environment (build 1.7.0_75-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)
PATH中定義的Java在哪裡?中的路徑
~/.bash_profile
如下,它沒有任何Java。使用者特定環境和啟動程序
PATH=$PATH:$HOME/bin export PATH ~ ~ ~
set
- 在 shell 上為 PATH 變數返回以下行:PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
預設
PATH
設置在/etc/profile
. 使用者可以通過編輯來修改它們,PATH
或者~/.profile
(~/.bash_profile
如果~/.bashrc
他們正在執行bash
),但如果他們不這樣做,他們仍然會有. 這就是為什麼這條線PATH``/etc/profile
PATH=$PATH:$HOME/bin
而不僅僅是
PATH=$HOME/bin
這樣,
PATH
保留原始值並簡單地附加新目錄。在我的系統上,PATH
設置/etc/profile
為PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
你可能有一條非常相似的線,這就是它的
/usr/bin
來源。