• shell 脚本学习之内部变量


    一,$BASH

        Bash的二进制程序文件的路径

      

    二,$BASH_ENV

        这个环境变量会指向一个Bash的启动文件, 当一个脚本被调用的时候, 这个启动文件将会被读取.

    三,$BASH_SUBSHELL

        这个变量用来提示子shell的层次

    四, $BASH_VERSINFO[n]

        这是一个含有6个元素的数组, 它包含了所安装的Bash的版本信息    

        # BASH_VERSINFO[0] = 3                      # 主版本号.
        # BASH_VERSINFO[1] = 00                     # 次版本号.
        # BASH_VERSINFO[2] = 14                     # 补丁次数.
        # BASH_VERSINFO[3] = 1                      # 编译版本.
        # BASH_VERSINFO[4] = release                # 发行状态.
        # BASH_VERSINFO[5] = i386-redhat-linux-gnu  # 结构体系
      
    五,$BASH_VERSION

        

        安装在系统上的bash版本号

    六,$DIRSTACK

        在目录栈中最顶端的值.

    七,$EDITOR

        脚本所调用的默认编辑器, 通常情况下是vi或者是emacs.

    八,$EUID

        "有效"用户ID

    九,$FUNCNAME

        当前函数的名字

        

        

    十,$GLOBIGNORE

    一个文件名的模式匹配列表, 如果在通配(globbing)中匹配到的文件包含有这个列表中的某个文件, 那么这个文件将被从匹配到的结果中去掉.  

      
    十一,$GROUPS 
      
      这是一个当前用户的组id列表(数组), 与记录在/etc/passwd文件中的内容一样.
    十二,$HOME
       用户的家目录
       
    十三,$HOSTNAME 
           
        

    十四, $HOSTTYPE

        主机类型

        

    十五,$IFS

       域分割

        

        

     十六, $IGNOREEOF

        忽略EOF: 告诉shell在log out之前要忽略多少文件结束符(control-D).

    十七, $LC_COLLATE

        常在.bashrc/etc/profile中设置, 这个变量用来控制文件名扩展和模式匹配的展开顺序

    十八,$LINENO
     
       这个变量用来记录自身在脚本中所在的行号.调试的时候用
    十九,$MACHTYPE
        
        机器类型
        

     二十,$OLDPWD

        之前的工作目录

        

    二十一,$OSTYPE

        操作系统类型

        

     二十二,$PATH

        可执行文件的操作路劲,,及环境变量
        
        

        

    二十三,$PIPESTATUS

        这个数组变量将保存最后一个运行的前台管道的退出状态码 相当于echo $?

        

    二十四,$PPID

        进程的$PPID就是这个进程的父进程的进程ID(pid)

        

    二十五,$PROMPT_COMMAND

        这个变量保存了在主提示符$PS1显示之前需要执行的命令

        

    二十六,$PS1

         这是主提示符,

        

    二十七,$PS2

        第二提示符, 当你需要额外输入的时候, 你就会看到它. 默认显示">".

         

    二十八,$PS3

         第三提示符, 它在一个select循环中显示

    二十九,$PS4

    第四提示符, 当你使用-x选项来调用脚本时, 这个提示符会出现在每行输出的开头. 默认显示"+".

     三十,$PWD

        工作目录(你当前所在的目录)

        

    三十一,$REPLY

         当没有参数变量提供给read命令的时候, 这个变量会作为默认变量提供给read命令

    三十二,$SECONDS    

         这个脚本已经运行的时间(以秒为单位).

     三十三, $SHELLOPTS

        shell中已经激活的选项的列表, 这是一个只读变量.

        

    三十四,$SHLVL

        Shell级别, 就是Bash被嵌套的深度. 如果是在命令行中, 那么$SHLVL为1, 如果在脚本中那么$SHLVL为2

         

    三十五,$TMOUT

         如果$TMOUT环境变量被设置为非零值time的话, 那么经过time秒后, shell提示符将会超时. 这将会导致登出(logout).

     三十六,$UID

        用户ID号

         

        

  • 相关阅读:
    [网鼎杯 2018]Comment-Git泄露部分
    Google Hacking 详解
    macOS修改Docker容器的端口映射配置
    CentOS6 7 8更换阿里yum源
    XSS代码合集(含测试效果详细版)-HTML4与更早版本的向量2
    VMware 启动Ubuntu时黑屏
    XSS代码合集(含测试效果详细版)-HTML4与更早版本的向量1
    APP安全在线检测网站
    Juice-Shop 二星题
    慕课网-安卓工程师初养成-4-5 练习题
  • 原文地址:https://www.cnblogs.com/kingle-study/p/9508308.html
Copyright © 2020-2023  润新知