Linux shell全局环境变量与局变环境变量

2020-09-08 0 441 百度已收录

一.概述

  在Linux中,很多程序脚本都通过环境变量来获取系统信息存储临时数据,配置信息。环境变量是指用来存储有关shell会话和工作环境信息,允许你在内存中存储数据,以便程序或shell中运行的脚本能够轻松访问到它们。也是存储持久数据的一种简便方法。在bash shell中,环境变量分为:全局和局部二类环境变量。

  1.1全局环境变量

    全局环境变量对于shell会话和所有生成的子shell都是可见的。局部变量则只是创建它们的shell可见。在linux系统中有系统环境变量,它们基本都是使用全大写字母,以区别普通用户的环境变量。要查看系统全局变量,可以使用env命令, 如下图所示:
    Linux shell全局环境变量与局变环境变量
    要查看个别的环境变量的值,可以使用printenv命令, 如下图所示:
    Linux shell全局环境变量与局变环境变量
    正如前面所说的,全局变量在所有生成的子shell都是可见的,下面是用子shell输出USER全局变量,如下所示:

    Linux shell全局环境变量与局变环境变量

  1.2 局部环境变量

    局部环境变量虽然是局部的,但和全局环境变量一样重要。在linux操作系统上有默认全局环境变量也有局部环境变量,用户也可以自定义局部变量。使用set 命令会显示某个指定进程下的所有环境变量,包括全局,局变,用户自定义变量。

二.用户自定义变量

  2.1 自定义局部变量

    下是自定义一个局部变量,使用echo来声明一个变量名my_variable,并赋值一个字符串(也可是数字)。然后再使用echo输出该变量的值。如下图所示:
    Linux shell全局环境变量与局变环境变量

    要注意的点是:声明变量名时必须加$关键词, 赋值时不要加$关键词,输出时要加$关键词,也可以说使用echo时都要加$。变量名,等号,值三者之间不能有空格。如果变量值有空格时,必须加双引号。如下所示:
    Linux shell全局环境变量与局变环境变量
  
  如果是在子shell中,那该变量就不存在,退回主线程还是存在,如下图所示:
    Linux shell全局环境变量与局变环境变量

  2.2 自定义全局变量    

    设定了全局变量,在该进程所创建的子进程中,该变量都是可见的。创建全局变量的方法是先创建一个局部变量,然后导出到全局环境中。通过export来导出,变量名前面不加$。如下图所示:
    Linux shell全局环境变量与局变环境变量

    在子shell中修改全局变量并不会影响到父shell中该变量的值。这种改变仅在子shell中有效。并不会反映到父shell中。如下图所示:
    Linux shell全局环境变量与局变环境变量

  2.3 删除环境变量

    要删除环境变量可以用unset命令,在unset引用变量名时,不要加$。
    Linux shell全局环境变量与局变环境变量

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

栗子博客 软件 Linux shell全局环境变量与局变环境变量 https://www.lizi.tw/soft/11324.html

常见问题
  • 1、杰齐1.7仅适用于PHP5.2 2、需Zend支持 3、尽量使用宝塔面板 4、尽量使用Windows 系统,关关对Linux支持不太友好。
查看详情

相关文章

评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务

Linux shell全局环境变量与局变环境变量-海报

分享本文封面