Ubuntu环境变量根据作用范围分为两类:
~/.bashrc、~/.profile)。/etc/environment、/etc/profile.d/)。通过export命令直接设置,关闭终端后失效。
语法:export VARIABLE_NAME="value"
示例:将/home/user/scripts添加到PATH变量:
export PATH="$PATH:/home/user/scripts"
验证:
echo $PATH # 查看PATH是否包含新增路径
echo $VARIABLE_NAME # 查看特定变量值
选择以下配置文件之一,修改后需执行source命令或重新登录生效:
~/.bashrc(推荐,适用于Bash用户)~/.bashrc在每次打开终端时加载,适合设置日常使用的变量(如PATH、自定义别名)。
步骤:
nano ~/.bashrcJAVA_HOME并添加其bin目录到PATH):export JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
export PATH="$JAVA_HOME/bin:$PATH"
Ctrl+X→Y→Enter)。source ~/.bashrc~/.profile(适用于登录Shell)~/.profile在用户登录时加载一次,适合设置需要持久化的变量(如系统路径)。
步骤:
nano ~/.profilePATH):export PATH="$PATH:/home/user/custom_bin"
source ~/.profile需管理员权限(sudo),选择以下配置文件之一:
/etc/environment(推荐简单变量)/etc/environment在系统启动时读取,格式为KEY=value(不支持变量扩展,如$PATH)。
步骤:
sudo nano /etc/environmentJAVA_HOME):JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/custom/bin"
/etc/profile.d/下的自定义脚本(推荐脚本逻辑)/etc/profile.d/下的.sh脚本会在所有用户登录时执行,适合需要条件判断或复杂逻辑的变量设置。
步骤:
sudo nano /etc/profile.d/custom_env.shif [ -d "/opt/custom/bin" ]; then
PATH="/opt/custom/bin:$PATH"
fi
export PATH
export SYSTEM_VAR="global_value"
sudo chmod +x /etc/profile.d/custom_env.shsource /etc/profile或重新登录。/etc/ld.so.conf.d/)若需添加动态库搜索路径(如CUDA、OpenCV库),需修改此目录下的配置文件。
步骤:
sudo nano /etc/ld.so.conf.d/custom_libs.conf/opt/custom/lib
/usr/local/cuda/lib64
sudo ldconfig(立即生效,无需重启)。env或printenv(printenv格式更简洁)。echo $VARIABLE_NAME(如echo $JAVA_HOME)。PATH变量:echo $PATH | tr ':' '\n'(将路径按冒号分隔显示)。export语句等号两侧无空格(如export PATH="$PATH:/new/path"正确,export PATH = /new/path错误)。PATH变量用冒号:分隔多个路径。source或重新登录,否则修改不会生效。~/.zshrc而非~/.bashrc。/etc/environment)需用sudo编辑,避免权限不足。通过以上方法,可根据需求灵活配置Ubuntu环境变量,满足不同场景的使用要求。