开始学习
< 返回

Linux 环境变量

什么是环境变量

环境变量是特定环境中的变量,无论是 Linux、Windows 还是其他操作系统,都有环境变量的概念。在 Linux 系统中,不同用户、不同权限、不同 Shell 终端等等都是“特定环境”,因此可以定义自己的环境变量。

在 Linux 系统中,环境变量通常用来定义系统运行环境的一些参数,比如每个用户不同的家目录(HOME)、当前的工作路径(PATH)、当前使用的 SHELL 程序、邮件存放位置(MAIL)等。

一般来说,Linux 系统中环境变量的名称都采用大写字母表示,这是一种约定俗成的规范。

常见环境变量说明

我们可以使用 env 命令查看当前系统所有的环境变量的列表,例如:

$ env
SHELL=/bin/bash
ROS_VERSION=1
QT_ACCESSIBILITY=1
COLORTERM=truecolor
...

下表列出了 Linux 系统常见环境变量及其说明。

环境变量名称 作用
HOME 用户的主目录(也称家目录)
SHELL 用户使用的 Shell 解释器名称
PATH 定义命令行解释器搜索用户执行命令的路径
EDITOR 用户默认的文本解释器
RANDOM 生成一个随机数字
LANG 系统语言、语系名称
HISTSIZE 输出的历史命令记录条数
HISTFILESIZE 保存的历史命令记录条数
PS1 Bash 解释器的提示符
MAIL 邮件保存路径

查看环境变量值

使用 env 命令,我们可以查看当前系统所有的环境变量。如果想查看某个环境变量的值,则可以使用 echo 命令,加上 $ + 环境变量名。语法如下:

echo $ENV_NAME

例如:查看环境变量 SHELL 的值

$ echo $SHELL
/bin/bash

设置环境变量的值

直接使用 “环境变量名=值” 的形式即可以设置环境变量的值,如果该环境变量未定义,则创建一个新的环境变量。

ENV_NAME=value

例如:使用如下命令,创建并设置环境变量 GETIOT 的值。

GETIOT="getiot.tech"

现在,我们可以使用 echo 命令,查看当前 GETIOT 环境变量的值。

$ echo $GETIOT 
getiot.tech

也可以在其他命令或程序中使用该环境变量,例如:

$ ping $GETIOT 
PING getiot.tech (42.192.64.149) 56(84) bytes of data.
64 比特,来自 42.192.64.149 (42.192.64.149): icmp_seq=1 ttl=50 时间=33.2 毫秒
64 比特,来自 42.192.64.149 (42.192.64.149): icmp_seq=2 ttl=50 时间=33.2 毫秒
64 比特,来自 42.192.64.149 (42.192.64.149): icmp_seq=3 ttl=50 时间=33.1 毫秒
Was this article helpful?
5 out of 5 stars

3 ratings

5 Stars 100%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
Please Share Your Feedback
How Can We Improve This Article?
文章目录