在 CentOS 系統中,環境變量的優先級從高到低如下:
當前 shell 的局部變量:這些變量僅在當前 shell 會話中有效,關閉 shell 后將丟失。例如,通過 export VARIABLE=value
命令設置的變量。
當前 shell 的環境變量:這些變量在當前 shell 會話中有效,可以通過 set
命令查看。例如,通過 export VARIABLE=value
命令設置的變量。
用戶級別的環境變量:這些變量存儲在用戶的 ~/.bashrc
、~/.bash_profile
或 ~/.profile
文件中。當用戶登錄時,這些文件會被讀取并設置相應的環境變量。例如,在 ~/.bashrc
文件中添加 export VARIABLE=value
。
系統級別的環境變量:這些變量存儲在 /etc/profile
、/etc/bashrc
或 /etc/environment
文件中。這些文件在系統啟動時被讀取并設置相應的環境變量。例如,在 /etc/profile
文件中添加 export VARIABLE=value
。
默認環境變量:這些變量是由系統或 shell 自動設置的,例如 PATH
、HOME
等。
優先級順序:局部變量 > 當前 shell 的環境變量 > 用戶級別的環境變量 > 系統級別的環境變量 > 默認環境變量。
當多個相同名稱的環境變量存在時,優先級高的變量值會覆蓋優先級低的變量值。例如,如果在用戶級別的環境變量和系統級別的環境變量中都設置了 PATH
變量,那么用戶級別的 PATH
變量將覆蓋系統級別的 PATH
變量。