开始学习
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 毫秒