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号
shell 脚本学习之内部变量的更多相关文章
- shell 脚本学习之一 ------let,echo,变量
转自:http://blog.chinaunix.net/uid-26827001-id-3154024.html 首先看到好多以这样开头的 #!/bin/bash 这个是告诉系统 解释此脚 ...
- 【shell脚本学习-1】
Shell学习笔记 简介: Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁.Shell既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个 ...
- Shell脚本学习指南笔记
Shell脚本学习指南 作者:Danbo 2015-8-3 脚本编程语言与编译型语言的差异 许多中型.大型的程序都是用编译型语言写的,例如:C.C+.Java等.这类程序只要从源代码(Source C ...
- shell脚本学习之6小时搞定(1)
shell脚本学习之6小时搞定(1) 简介 Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把 ...
- 转 shell脚本学习指南
shell脚本学习指南 以下八点不敢说就能成为你shell脚本学习指南de全部,至少可以让你编写出可靠的shell脚本. 1. 指定bashshell 脚本的第一行,#!之后应该是什么?如果拿这个问题 ...
- shell脚本学习总结02--数组
bash同时支持普通数组个关联数组,普通数组只能使用整数作为数组的索引,关联数组可以使用字符串作为数组的索引. 数组的定义方法: 在单行中使用一列值定义一个数组 [root@new ~]# array ...
- 笔记——shell脚本学习指南
<shell脚本学习指南>机械工业出版 ISBN 987-7-111-25504-8 第2章 2.4 初级陷阱 1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超 ...
- Shell 脚本学习资料搜集
Shell文档 ChinaUnix上大神“網中人”总结的Shell十三问,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点.每一问都写得非常精彩.ChinaUnix ...
- 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式
正则表达式_百度百科 http://baike.baidu.com/link?url=ybgDrN2WQQKN64_gu-diCqdeDqL8LQ-jiQ-ftzzPaNUa9CmgBRDNnyx50 ...
随机推荐
- URAL 1133 Fibonacci Sequence(数论)
题目链接 题意 :给你第 i 项的值fi,第 j 项的值是 fj 让你求第n项的值,这个数列满足斐波那契的性质,每一项的值是前两项的值得和. 思路 :知道了第 i 项第j项,而且还知道了每个数的范围, ...
- 20169219 SQL注入实验报告
实验介绍 SQL注入技术是利用web应用程序和数据库服务器之间的接口来篡改网站内容的攻击技术.通过把SQL命令插入到Web表单提交框.输入域名框或页面请求框中,最终欺骗服务器执行恶意的SQL命令. 在 ...
- Java静态变量的用法:伪单例
这几天遇到一个问题,一个Service里有一个map,但是这个Service有别的继承,于是每一个Service都会创建一个map,但是这个map应该是公用的,于是就有问题了...(按结构说Servi ...
- 挂载ISO 和 KILL 掉占用进程
mount -t iso9660 -o loop,user VMware-tools-linux-8.6.0-425873.iso /mnt/cdrom fuser -m -v -i -k /mnt ...
- ToastUtils
public class ToastUtils { private static String TAG="ToastUtils"; private static Toast toa ...
- MVC ASP.NET MVC各个版本的区别
ASP.NET MVC各个版本的区别 Net Framework4.5是不支持安装在window server 2003上,如非装请用net framework4.0; MVC1.0 publsh t ...
- android android遇到的错误
android遇到的错误 一.eclipse运行.生成.打包APK报错: 原因1: jdk版本太低,升级jdk 原因2: tools选择: android sdk build-tools 大于等于2 ...
- [转载] C++ namespaces 使用
原地址:http://blog.sina.com.cn/s/blog_986c99d601010hiv.html 命名空间(namespace)是一种描述逻辑分组的机制,可以将按某些标准在逻辑上属于同 ...
- Dos命令 WIN10 WIFI命令
设置WIFI命令: netsh wlan set hostednetwork ssid=T key=123456798 mode=allow netsh wlan start hostednetwor ...
- Google浏览器历史版和下载地址
Google浏览器历史版本下载地址https://www.slimjet.com/chrome/google-chrome-old-version.php google webdriver下载地址分享 ...