企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
**环境变量设置方法:** 1. 在`/etc/profile`文件中添加变量,此方法是对所有用户永久生效的:`export HISTFILESIZE=10000` 2. 在用户目录下的`/root/.bash_profile`文件中增加变量,此方法是针对单一用户永久生效的 3. 直接在终端运行export命令定义变量,此方法是是针对当前BASH临时生效的,退出之后就失效了 **环境变量相关配置文件** 1. `/etc/profile,/etc/bashrc` 是用于系统全局环境变量 2. ` ~/.profile,~/.bashrc` 是用于设置指定用户的私有环境变量 3. `/etc/profile`这个文件对每个shell及所有用户都有效,当用户第一次登录时,该文件就被执行,当被修改时,必须重启才会生效 4. `/etc/profile.d/` 可以理解为是/etc/profile的一部分,只不过按类别或功能拆分成若干个文件进行配置 4. `/etc/bashrc` 这个文件当用户运行bash shell时被执行,当被修改后,不用重启只需要打开一个新的 bash 即可生效 5. `/etc/environment`是系统的环境变量,/etc/profile是所有用户的环境变量,前者与登录用户无关,后者与登录用户有关,当同一变量在两个文件里有冲突时,以用户环境为准 6. `~/.bash_profile` 文件是当前用户的私有环境信息配置文件,用户登录时执行一次,默认情况是用于设置环境变量并执行当前用户的 .bashrc 文件(注意:Centos7系统命名为.bash_profile,其他系统可能是.bash_login或.profile) 7. `~/.bash_logout` 文件在每次退出bash shell时执行,可以把一些清理工作的命令放进这个文件 **系统环境变量读取优先级:** 1. 系统首先寻找 `/etc/profile` 脚本文件并执行,然后根据其内容读取额外的设定的文档,如 `/etc/profile.d` 2. 然后根据不同使用者帐号,去其根目录读取`~/.bash_profile`(在这个文件中有执行.bashrc的脚本,.bashrc脚本里会去调用/etc/bashrc文件),如果这读取不了就读取`~/.bash_login`,这个也读取不了才会读取 `~/.profile` 3. 在退出shell时,还会执行`~/.bash_logout`文件 因此用户主目录下文件的执行的顺序为:`~/.bash_profile `->` ~/.bash_login `->` ~/.profile` **系统执行文件顺序为:** `/etc/profile`->(`~/.bash_profile` | ` ~/.bash_login ` | ` ~/.profile`)->`.bashrc`->`/etc/bashrc`->`~/.bash_logout`