在 CentOS 系统中,环境变量的优先级从高到低如下:
-
当前 shell 的局部变量:这些变量仅在当前 shell 会话中有效,关闭 shell 后将丢失。它们的优先级最高。
-
当前 shell 的环境变量:这些变量在当前 shell 会话中有效,但它们是在启动 shell 时从配置文件(如
~/.bashrc
、~/.bash_profile
或/etc/profile
)中加载的。它们的优先级次之。 -
用户级别的环境变量:这些变量在用户的配置文件(如
~/.bashrc
、~/.bash_profile
或/etc/profile.d/
下的脚本)中设置。它们的优先级再次之。 -
系统级别的环境变量:这些变量在系统级别的配置文件(如
/etc/profile
、/etc/environment
或/etc/sysconfig/
下的脚本)中设置。它们的优先级最低。
当多个配置文件中设置了相同的环境变量时,优先级高的配置文件中的设置会覆盖优先级低的配置文件中的设置。例如,如果在用户级别的环境变量和系统级别的环境变量中都设置了 PATH
变量,那么当前 shell 会话中将使用用户级别的 PATH
变量。
要查看当前 shell 的环境变量,可以使用 printenv
命令。要查看特定环境变量的值,可以使用 echo $VARIABLE_NAME
命令,其中 VARIABLE_NAME
是要查看的环境变量的名称。