Linux中的环境变量(Environment Variables)是操作系统用来存储有关系统环境信息的一种机制,它以“键=值”的形式存在,提供给用户、进程、Shell脚本和系统服务访问环境配置信息的能力。
🧠 一、环境变量的作用
环境变量在Linux中有以下几个常见作用:
作用 | 举例 |
---|---|
设置程序运行的环境 | PATH 决定系统到哪里去寻找可执行文件 |
存储用户信息 | HOME , USER , SHELL |
控制系统行为 | LANG , TZ , TERM 等设置语言、时区、终端类型 |
配置软件行为 | 比如 Java 使用 JAVA_HOME , Python 使用 PYTHONPATH |
📦 二、常见环境变量
变量名 | 含义 |
---|---|
PATH |
命令搜索路径,多个路径用冒号 : 分隔 |
HOME |
当前用户的主目录 |
USER |
当前用户名 |
SHELL |
当前使用的Shell类型(如 /bin/bash ) |
LANG |
当前系统语言编码设置 |
PWD |
当前工作目录 |
OLDPWD |
上一个工作目录 |
EDITOR |
默认文本编辑器 |
TERM |
当前终端类型 |
PS1 |
命令提示符的格式定义 |
MAIL |
当前用户的邮箱文件位置 |
🧰 三、环境变量操作方法
1. 查看环境变量
printenv # 查看所有环境变量
echo $PATH # 查看某个环境变量的值
env # 也可查看当前环境变量(适用于脚本)
2. 设置环境变量(临时)
export NAME=VALUE
# 示例: export EDITOR=vim
这种设置只对当前终端会话有效,关闭终端后失效。
3. 设置环境变量(永久)
编辑用户配置文件,例如:
~/.bashrc
~/.bash_profile
~/.profile
~/.zshrc
(若使用 zsh)
添加:
export NAME=VALUE
然后执行 source ~/.bashrc
使其立即生效。
🧪 四、临时运行某个环境变量
NAME=VALUE command
# 示例:LANG=zh_CN.UTF-8 ls
只对该命令生效,不会污染当前环境。
🧭 五、环境变量与Shell变量的区别
类型 | 是否继承给子进程 | 设置方式 |
---|---|---|
环境变量 | ✅ | export VAR=value |
Shell变量 | ❌ | VAR=value (不 export) |
📚 六、实践建议
- 修改
PATH
时注意添加而不是替换,避免影响系统命令执行:export PATH=/custom/bin:$PATH
- 使用
printenv
或env
查看当前进程环境,调试程序运行问题。
声明:本文为原创文章,版权归深谋之道所有,欢迎分享本文,转载请保留出处!