Linux 中的环境变量列表

在本教程中,你将学习 -

  • 什么是变量?
  • 什么是环境变量?
  • 访问变量值
  • 设置新环境变量

什么是变量?

在计算机中,变量是用于存储值的位置,其可以是文件名、文本、数字或任何其他数据。它通常用它的字符串来表示。可以显示、删除、编辑重写这样存储的值。

变量在计算机编程中起着重要作用,因为它们使程序员能够编写灵活的程序。由于它们与我们所处理的操作系统相关,因此我们需要了解其中的一些以及我们如何使用它们。

什么是环境变量?

环境变量是影响计算机上的进程或程序的动态值。它们存在于每个操作系统中,但类型可能不同。可以创建、编辑、保存和删除环境变量,并提供有关系统行为的信息。

环境变量可以改变软件/程序的行为方式。

例如,$LANG 环境变量存储用户理解的语言的值。该值由应用程序读取,使得中国用户显示中文界面,而美国用户显示英语界面。

让我们研究一些常见的环境变量 -

变量 描述
PATH 此变量包含用冒号 : 分隔的目录列表,系统在其中查找可执行文件。在终端上输入命令时,shell 会在 $ PATH 变量中提到的不同目录中查找该命令。如果找到该命令,则执行该命令。否则,它将返回错误 command not found
USER 用户名
HOME 用户主目录的默认路径
EDITOR 编辑文件内容的程序的路径
UID 用户的唯一 ID
TERM 默认终端模拟器
SHELL 用户正在使用的 Shell

访问变量值

要确定变量的值,请使用该命令

echo $VARIABLE

变量是 - 区分大小写。确保在右侧字母大小写中键入变量名称,否则可能无法获得所需的结果。

$ echo $PATH
/home/username/.local/bin:/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

env 命令显示所有环境变量。

LS_COLORS=rs=0:di=01
SSH_CONNECTION=158.116.250.16 52806 80.240.31.244 22
LESSCLOSE=/usr/bin/lesspipe %s %s
LANG=en_US.UTF-8
XDG_SESSION_ID=38
USER=username
PWD=/home/username
HOME=/home/username
SSH_CLIENT=158.116.250.16 52806 22
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
SSH_TTY=/dev/pts/0
MAIL=/var/mail/username
TERM=xterm
SHELL=/bin/bash
SHLVL=1
LOGNAME=username
XDG_RUNTIME_DIR=/run/user/1000
PATH=/home/username/.local/bin:/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
LESSOPEN=| /usr/bin/lesspipe %s
_=/usr/bin/env

设置新环境变量

你可以使用语法创建自己的用户定义变量

VARIABLE_NAME=variable_value

请注意变量是区分大小写的,通常变量的名称是大写,而且赋值的时候 = 两端不要有空格,否则会报错。

删除变量

可以使用以下语法从系统中删除变量。

unset variablename

这将永久删除变量及其数值。

总结:

  • 环境变量控制操作系统中程序的行为。
命令 说明
echo $VARIABLE 显示变量的值
echo $PATH 显示所有环境变量
VARIABLE_NAME=value 创建一个新变量
unset 删除变量
export Variable=value 设置环境变量的值