在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通过合理配置环境变量,可以高效管理系统行为、开发环境及应用程序配置。