一,$BASH

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

  

二,$BASH_ENV

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

三,$BASH_SUBSHELL

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

四, $BASH_VERSINFO[n]

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

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

    安装在系统上的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

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

    

二十三,$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号

    

    

shell 脚本学习之内部变量的更多相关文章

  1. shell 脚本学习之一 ------let,echo,变量

    转自:http://blog.chinaunix.net/uid-26827001-id-3154024.html 首先看到好多以这样开头的    #!/bin/bash   这个是告诉系统 解释此脚 ...

  2. 【shell脚本学习-1】

    Shell学习笔记 简介: Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁.Shell既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个 ...

  3. Shell脚本学习指南笔记

    Shell脚本学习指南 作者:Danbo 2015-8-3 脚本编程语言与编译型语言的差异 许多中型.大型的程序都是用编译型语言写的,例如:C.C+.Java等.这类程序只要从源代码(Source C ...

  4. shell脚本学习之6小时搞定(1)

    shell脚本学习之6小时搞定(1) 简介 Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把 ...

  5. 转 shell脚本学习指南

    shell脚本学习指南 以下八点不敢说就能成为你shell脚本学习指南de全部,至少可以让你编写出可靠的shell脚本. 1. 指定bashshell 脚本的第一行,#!之后应该是什么?如果拿这个问题 ...

  6. shell脚本学习总结02--数组

    bash同时支持普通数组个关联数组,普通数组只能使用整数作为数组的索引,关联数组可以使用字符串作为数组的索引. 数组的定义方法: 在单行中使用一列值定义一个数组 [root@new ~]# array ...

  7. 笔记——shell脚本学习指南

    <shell脚本学习指南>机械工业出版 ISBN 987-7-111-25504-8 第2章 2.4 初级陷阱 1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超 ...

  8. Shell 脚本学习资料搜集

    Shell文档 ChinaUnix上大神“網中人”总结的Shell十三问,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点.每一问都写得非常精彩.ChinaUnix ...

  9. 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式

    正则表达式_百度百科 http://baike.baidu.com/link?url=ybgDrN2WQQKN64_gu-diCqdeDqL8LQ-jiQ-ftzzPaNUa9CmgBRDNnyx50 ...

随机推荐

  1. URAL 1133 Fibonacci Sequence(数论)

    题目链接 题意 :给你第 i 项的值fi,第 j 项的值是 fj 让你求第n项的值,这个数列满足斐波那契的性质,每一项的值是前两项的值得和. 思路 :知道了第 i 项第j项,而且还知道了每个数的范围, ...

  2. 20169219 SQL注入实验报告

    实验介绍 SQL注入技术是利用web应用程序和数据库服务器之间的接口来篡改网站内容的攻击技术.通过把SQL命令插入到Web表单提交框.输入域名框或页面请求框中,最终欺骗服务器执行恶意的SQL命令. 在 ...

  3. Java静态变量的用法:伪单例

    这几天遇到一个问题,一个Service里有一个map,但是这个Service有别的继承,于是每一个Service都会创建一个map,但是这个map应该是公用的,于是就有问题了...(按结构说Servi ...

  4. 挂载ISO 和 KILL 掉占用进程

    mount -t iso9660 -o loop,user VMware-tools-linux-8.6.0-425873.iso /mnt/cdrom fuser -m -v -i -k  /mnt ...

  5. ToastUtils

    public class ToastUtils { private static String TAG="ToastUtils"; private static Toast toa ...

  6. MVC ASP.NET MVC各个版本的区别

    ASP.NET MVC各个版本的区别 Net Framework4.5是不支持安装在window server 2003上,如非装请用net framework4.0; MVC1.0 publsh t ...

  7. android android遇到的错误

    android遇到的错误 一.eclipse运行.生成.打包APK报错: 原因1: jdk版本太低,升级jdk 原因2: tools选择: android sdk build-tools  大于等于2 ...

  8. [转载] C++ namespaces 使用

    原地址:http://blog.sina.com.cn/s/blog_986c99d601010hiv.html 命名空间(namespace)是一种描述逻辑分组的机制,可以将按某些标准在逻辑上属于同 ...

  9. Dos命令 WIN10 WIFI命令

    设置WIFI命令: netsh wlan set hostednetwork ssid=T key=123456798 mode=allow netsh wlan start hostednetwor ...

  10. Google浏览器历史版和下载地址

    Google浏览器历史版本下载地址https://www.slimjet.com/chrome/google-chrome-old-version.php google webdriver下载地址分享 ...