51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 876|回复: 0
打印 上一主题 下一主题

系统环境变量在Linux中如何查看?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-10-17 16:23:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 草帽路飞UU 于 2022-10-17 16:24 编辑

环境变量取决于某些特定的环境,是特定于当前系统环境的变量,比如,当前登录的用户存储在 USER 变量中。


  我们今天这篇文章将会介绍如何查看系统的环境变量。

  什么是环境变量



  环境变量与你的桌面环境无关。

  Hostname 是我们遇到的最基本的环境变量之一,一般情况下它的拼写字母是大写的,为什么会这样呢?

  因为大多数环境变量都是由系统预定义的,并且是全局变量,所以它们通常都是用大写字母书写的。

  那么,为什么首先要使用环境变量呢?

  假设你是一名程序员,并且你的代码需要访问你的数据库密钥,该密钥不应公开共享。

  那么,如果将代码共享到 git  上的时候,应该怎样避免密码泄露呢?一般的做法是,将数据库密钥封装为环境变量。

  通过这种方式,将git上的指令设置为“如果要使代码正常运行,需要用数据库密钥来替换此变量”。

  当然,这是使用环境变量的一种方式,下面是Linux系统中常见的一些环境变量:



打印环境变量



  在 Linux 中有多种方法来打印环境变量,我们从最简单的方式开始。

  1、使用 printenv 命令



  printenv 程序用于打印当前shell的环境变量。

  假如我们要使用 printenv 打印 USERNAME 变量的值,那么命令如下:


  printenv

  同样,可以使用 printenv 打印多个环境变量,使用空格分割,比如,使用 printenv 打印 HOME 和 USERNAME 的值:


  printenv

  上述命令,首先会打印当前登录用户的主目录,然后第二行显示主机名,如下图所示:





那么,如何打印当前 shell 中所有可用环境变量呢?只需要运行 printenv 命令即可:

  printenv


2、使用 echo 命令


  经常使用 Linux 的用户会比较习惯使用 echo 命令。比如,如下命令将会打印 USERNAME 的值:

  echo $USERNAME


那么,使用 echo 命令打印多个环境变量该怎么做呢?使用如下语法:

  echo -e "$<variable 1> \n<variable 2> \n<variable 3>"

  比如,使用如下命令同时打印 HOME, USERNAME, HOSTNAME 的值:

  echo -e "$USERNAME \n$HOME \n$HOSTNAME"


 3、使用 env 命令


  shell 脚本通常使用 env 命令启动正确的解释器,但我们也可以使用 env 指令列出可用的环境变量。

  使用不带任何参数的 env 命令,会打印所有可用的环境变量:

  env


那么,如果想要获取某个特定环境变量的值,需要怎样做呢?可以使用 grep 来对结果进行过滤。下面我们演示如何打印 HOME的值:

  env


4、使用 declare 命令


  declare 命令用于声明和打印shell中变量的值。与上面介绍的其他命令一样,不带任何参数的使用 declare 命令会打印出所有可用的环境变量:

  declare


前面我们使用过grep过滤结果,其实,可以使用它来过滤多个结果,语法如下:

  declare | grep '<variable 1>\|<variable 2>\|<variable 3>'

  下面命令打印 HOSTNAME 和 USERNAME 的值:

  declare | grep 'HOSTNAME\|USERNAME'


5、使用 set 命令


  通常,set 命令用于在 shell 中设置或者取消设置配置项,以设置进程信息。除此以外,set 命令也可以用来打印当前 shell 的环境变量。如下命令:

  set


同样可以使用 grep 来过滤 set 命令的结果。下面的例子展示如何使用 grep 命令打印多个环境变量:

  set | grep 'HISTFILESIZE\|HISTFILE\|GNOME_SHELL_SESSION_MODE'


以上我们介绍了打印环境变量的多个方法,但是建议使用第一种方法,因为它的语法最简单。

















本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-4-25 01:28 , Processed in 0.067478 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表