在 Ubuntu 系統中,環境變量的優先級從高到低如下:
當前 shell 的局部變量:在當前 shell 中直接設置的變量具有最高的優先級。
shell 啟動文件:這些文件在啟動 shell 時執行,可以設置環境變量。它們的優先級順序如下:
/etc/profile
:對所有用戶生效的全局環境變量。~/.profile
:針對特定用戶的配置文件。/etc/bash.bashrc
:對所有用戶生效的 bash 配置文件。~/.bashrc
:針對特定用戶的 bash 配置文件。系統級環境變量配置文件:這些文件在系統啟動時加載,可以設置全局環境變量。它們的優先級順序如下:
/etc/environment
:包含系統級的環境變量設置。/etc/profile.d/
目錄下的腳本:這些腳本在 /etc/profile
之后執行,可以為特定用戶或所有用戶設置環境變量。Docker 容器:如果你在 Docker 容器中運行應用程序,容器的環境變量優先級高于宿主機。
Kubernetes Pod:在 Kubernetes 環境中,Pod 的環境變量優先級高于節點上的環境變量。
應用程序配置文件:某些應用程序允許在其配置文件中設置環境變量,這些變量的優先級取決于應用程序的實現。
請注意,環境變量的優先級可能因系統和應用程序的不同而有所差異。在某些情況下,可能需要查閱特定應用程序或系統的文檔以獲取準確的信息。