全局环境变量对于所有的shell都适用(父shell与子shell)
全局环境变量可以使用命令env
和printenv
显示
printenv
命令,使用env
命令会报错export 变量名
来将局部变量转化为全局环境变量unset 变量名
命令echo $PATH
/etc/profile /etc/bash.bashrc $HOME/.bash_profile $HOME/.bashrc $HOME/.bash_login $HOME/.profile
在使用层次方面说,/etc/profile,/etc/bash.bashrc 文件都是为所有用户使用的,其他变量文件都是为单个用户使用的
从文件关系来说,$HOME/.bash_login,$HOME/.bash_profile,$HOME/.profile 都是会查看引用 $HOME/.bashrc 的内容,而$HOME/.bashrc,/etc/profile 则会借鉴 /etc/bash.bashrc 的内容
从执行方式来说,/etc/profile ,$HOME/.bash_profile,$HOME/.bash_login,$HOME/.profile 修改后,都是重启后才能生效的,而/etc/bash.bashrc,$HOME/.bashrc 被修改后重新打开一个执行窗口便能生效,不需要重启
从读取顺序来讲,/etc/profile,/etc/bash.bashrc 重启后一定会被读取,而$HOME/.bash_profile,$HOME/.bash_login,$HOME/.profile 只要被读取一个就不会读取其他的
xxx.sh
文件,在该文件中写上我们想配置的全局环境变量路径,这样做便于维护export PATH="$HOME/XXXdir:$PATH" export PATH="$PATH:$HOME/XXXdir"
注:本文截图来自于: