data-v-779751fb=""data-element="root">
环境变量取决于个别特定的环境,是特定于当前系统环境的变量,例如,当前登入的用户储存在USER变量中。
我们明天这篇文章将会介绍怎么查看系统的环境变量。
哪些是环境变量
环境变量与你的桌面环境无关。
Hostname是我们遇见的最基本的环境变量之一,通常情况下它的拼写字母是小写的,为何会这样呢?
由于大多数环境变量都是由系统预定义的,而且是全局变量,所以它们一般都是用小写字母书写的。
这么,为何首先要使用环境变量呢?
假定你是一名程序员,而且你的代码须要访问你的数据库秘钥,该秘钥不应公开共享。
这么,倘若将代码共享到git上的时侯,应当如何防止密码泄漏呢?通常的做法是,将数据库秘钥封装为环境变量。
通过这些方法,将git上的指令设置为“如果要使代码正常运行,须要用数据库秘钥来替换此变量”。
其实,这是使用环境变量的一种形式,下边是Linux系统中常见的一些环境变量:
环境变量
描述
HOME
显示当前用房主目录
HOSTNAME
系统的主机名
UID
储存用户的惟一ID
SHELL
显示当前正在使用的shell路径
BASH_VERSION
当前使用的bash实例的版本
HISTFILE
保存命令历史记录的文件路径
TERM
显示正在使用的终端类型
PATH
显示已列分割的文件和目录的路径
复印环境变量
在Linux中有多种方式来复印环境变量,我们从最简单的形式开始。
1、使用printenv命令
printenv程序用于复印当前shell的环境变量。
如果我们要使用printenv复印USERNAME变量的值,这么命令如下:
printenv
同样,可以使用printenv复印多个环境变量,使用空格分割,例如,使用printenv复印HOME和USERNAME的值:
printenv
上述命令,首先会复印当前登入用户的主目录,之后第二行显示主机名,如右图所示:
这么,怎么复印当前shell中所有可用环境变量呢?只须要运行printenv命令即可:
printenv
2、使用echo命令
常常使用Linux的用户会比较习惯使用echo命令。例如,如下命令将会复印USERNAME的值:
echo $USERNAME
这么linux 设置环境变量,使用echo命令复印多个环境变量该如何做呢?使用如下句型:
echo -e "$ "
例如,使用如下命令同时复印HOME,USERNAME,HOSTNAME的值:
echo -e "$USERNAME $HOME $HOSTNAME"
3、使用env命令
shell脚本一般使用env命令启动正确的类库,但我们也可以使用env指令列举可用的环境变量。
使用不带任何参数的env命令,会复印所有可用的环境变量:
env
这么,假如想要获取某个特定环境变量的值,须要如何做呢?可以使用grep来对结果进行过滤。下边我们演示怎么复印HOME的值:
env
4、使用declare命令
declare命令用于申明和复印shell中变量的值。与前面介绍的其他命令一样,不带任何参数的使用declare命令会复印出所有可用的环境变量:
declare
后面我们使用过grep过滤结果,虽然,可以使用它来过滤多个结果linux deepin,句型如下:
declare | grep '||'
下边命令复印HOSTNAME和USERNAME的值:
declare | grep 'HOSTNAME|USERNAME'
5、使用set命令
一般linux 设置环境变量,set命令用于在shell中设置或则取消设置配置项,以设置进程信息。除此以外,set命令也可以拿来复印当前shell的环境变量。如下命令:
set
同样可以使用grep来过滤set命令的结果。下边的事例展示怎样使用grep命令复印多个环境变量:
set | grep 'HISTFILESIZE|HISTFILE|GNOME_SHELL_SESSION_MODE'
以上我们介绍了复印环境变量的多个方式linux操作系统,并且建议使用第一种方式,由于它的句型最简单。