在Linux系统中,环境变量(Environment Variables)是动态命名的值,用于存储系统或应用程序的配置信息。它们可以被Shell及其子进程访问,是系统行为控制和脚本编程的重要工具。以下是Linux环境变量的分类及常见示例:
系统级环境变量
/etc/environment
/etc/profile
/etc/profile.d/*.sh
/etc/bashrc
(部分发行版)用户级环境变量
~/.bashrc
~/.bash_profile
~/.profile
~/.bash_logout
(退出时生效)临时环境变量
bash
export VAR_NAME=value # 临时设置
变量名 | 作用描述 |
---|---|
PATH |
系统可执行文件的搜索路径(冒号分隔),例如 /usr/local/bin:/usr/bin |
HOME |
当前用户的主目录路径(如 /home/username ) |
USER / LOGNAME |
当前登录用户名 |
SHELL |
当前用户的默认Shell(如 /bin/bash ) |
PWD |
当前工作目录路径 |
LANG / LC_* |
系统语言和本地化设置(如 en_US.UTF-8 ) |
TERM |
终端类型(如 xterm-256color ) |
DISPLAY |
X11图形界面的显示地址(如 :0 ) |
PS1 |
Shell提示符格式(如 \u@\h:\w\$ ) |
EDITOR |
默认文本编辑器(如 vim 或 nano ) |
TZ |
时区设置(如 Asia/Shanghai ) |
LD_LIBRARY_PATH |
动态链接库的搜索路径(慎用,可能引发安全问题) |
HTTP_PROXY |
网络代理地址(如 http://proxy.example.com:8080 ) |
查看所有环境变量
env # 列出所有环境变量
printenv # 同上(或查看特定变量,如 `printenv PATH`)
查看单个变量
echo $PATH # 输出PATH的值
设置临时变量
export MY_VAR="test" # 当前Shell生效
永久设置变量
~/.bashrc
或 ~/.profile
中添加:bash
export MY_VAR="test"
bash
source ~/.bashrc # 立即生效
删除变量
unset MY_VAR # 移除变量
优先级问题
~/.bashrc
)会覆盖系统级配置(如 /etc/environment
)。安全风险
vault
)。作用域差异
export
提升为环境变量。调试技巧
env
或 printenv
检查变量是否生效。echo $?
查看上一条命令的退出状态(0表示成功)。$PATH
的修改:添加自定义路径到 PATH
的示例:
bash
export PATH=$PATH:/your/custom/path
通过合理配置环境变量,可以高效管理系统行为、开发环境及应用程序配置。