环境变量是操作系统中用于存储系统和应用程序配置的命名值对。这些变量可以在命令行界面或脚本中访问和使用,来影响进程的行为。以下是有关环境变量的一些关键概念和常用操作。
常见环境变量
系统环境变量
PATH
:包含可执行文件的目录列表,当用户在命令行中输入命令时,系统会在这些目录中搜索该命令。HOME
:当前用户的主目录。USER
:当前用户的用户名。SHELL
:当前用户的默认 shell 程序。PWD
:当前工作目录。LANG
:系统的语言和区域设置。EDITOR
:默认文本编辑器。
自定义环境变量
用户可以根据需要定义自己的环境变量,来存储配置或临时数据。
查看环境变量
查看所有环境变量
使用 printenv
或 env
命令查看当前所有环境变量:
printenv
或
env
查看特定环境变量
使用 echo
命令查看特定环境变量的值:
echo $VARIABLE_NAME
例如,查看 PATH
变量:
echo $PATH
设置环境变量
临时设置环境变量
在当前 shell 会话中设置环境变量,可以使用 export
命令:
export VARIABLE_NAME=value
例如:
export MY_VAR="Hello World"
该变量在当前会话和其子进程中有效,但关闭会话后会失效。
永久设置环境变量
要永久设置环境变量,可以将其添加到 shell 配置文件中,例如 .bashrc
、.bash_profile
或 .profile
。
示例
编辑 ~/.bashrc
文件:
nano ~/.bashrc
添加以下行:
export MY_VAR="Hello World"
保存文件并退出,然后使更改生效:
source ~/.bashrc
修改环境变量
修改 PATH
变量
要向 PATH
变量添加新目录,可以这样做:
export PATH=$PATH:/new/directory
删除环境变量
要从当前会话中删除环境变量,可以使用 unset
命令:
unset VARIABLE_NAME
例如:
unset MY_VAR
示例
设置编辑器
设置默认文本编辑器为 vim
:
export EDITOR=vim
添加到 ~/.bashrc
以使其永久生效:
echo 'export EDITOR=vim' >> ~/.bashrc
source ~/.bashrc
设置 Java 环境变量
假设 Java 安装在 /usr/lib/jvm/java-11-openjdk
目录中:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
export PATH=$PATH:$JAVA_HOME/bin
添加到 ~/.bashrc
以使其永久生效:
echo 'export JAVA_HOME=/usr/lib/jvm/java-11-openjdk' >> ~/.bashrc
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> ~/.bashrc
source ~/.bashrc
使用环境变量的注意事项
- 避免命名冲突:选择独特的变量名称,避免与系统变量冲突。
- 权限:确保只有需要的用户可以修改关键环境变量,防止安全风险。
- 保持简洁:尽量避免在环境变量中存储大量数据或复杂配置。
环境变量在系统配置和脚本编写中起着重要作用,熟悉其操作可以大大提高效率和灵活性。