在 CentOS 中添加环境变量(env)常见有几种方式,取决于作用范围(当前用户 / 所有用户)以及是否永久生效。下面按常见场景说明。
关闭终端后失效。
export VAR_NAME=value
示例:
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
查看:
echo $JAVA_HOME
只对当前用户生效,写入 ~/.bashrc 或 ~/.bash_profile
vi ~/.bashrc
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
source ~/.bashrc
✅ 适合开发环境、普通用户
对所有用户生效(需要 root 权限)
/etc/profilesudo vi /etc/profile
添加:
export GLOBAL_VAR=/opt/app
export PATH=$GLOBAL_VAR/bin:$PATH
生效:
source /etc/profile
⚠️ 不推荐频繁修改,会影响所有用户
/etc/profile.d/ 下新建脚本sudo vi /etc/profile.d/myenv.sh
内容:
export MY_ENV=value
export PATH=$PATH:/usr/local/bin
赋予执行权限(可选):
sudo chmod +x /etc/profile.d/myenv.sh
✅ 这是 CentOS 官方推荐方式
如果是 登录 shell(login shell):
vi ~/.bash_profile
添加:
export PATH=$PATH:/new/path
env
或
printenv
查看某个变量:
echo $PATH
✅ 正确方式
export PATH=/new/path:$PATH
❌ 错误方式(会覆盖原 PATH)
export PATH=/new/path
| 场景 | 文件 |
|---|---|
| 临时 | export |
| 当前用户 | ~/.bashrc |
| 当前用户(登录) | ~/.bash_profile |
| 所有用户 | /etc/profile.d/*.sh |
| 所有用户(不推荐) | /etc/profile |
如果你有具体需求(比如 Java / Python / Docker / 自定义程序),可以告诉我,我可以给你一份可直接用的配置示例 ✅