第九章:【变量的访问】
1节:bash内部变量
变量:$BASH
意义:bash程序的路径。
例子:
变量:$BASH_ENV
意义:每个bash脚本被执行前会调用$BASH_ENV所指向的脚本
例子:
变量:$BASH_SUBSHELL
意义:显示当前的shell层次,最高层为0,0层的子shell层次为1
例子:
变量:$HOME
意义:用户用户目录
变量:$BASHPID
意义:当前bash进程的pid
同$$的结果相同,都是表示当前运行的进程pid,
但是在当前bash进程的子shell进程中,$$显示
的是子shell的父进程pid,而$BASHPID不变。
变量:$BASH_VERSION
意义:当前的bash版
变量:$BASH_VERSINFO[n]
意义:同$BASH_VERSION相似,但是将会显示得更详细
变量:$DIRSTACK
意义:当前目录栈的栈顶目录,bash内建变量
例子:
变量:$EUID
意义:当前用户的用户ID
变量:$FUNCNAME
意义:上一个执行的函数名
变量:$GLOBIGNORE
意义:文件名匹配时被排除的匹配列表
变量:$IGNOREEOF
意义:在shell退出以前忽略的EOF(CTRL+D)个数
变量:$HOSTTYPE $MACHTYPE $HOSTNAME $OSTYPE
意义:机器类型,系统类型
变量:$IFS
意义:bash内建的分隔符
变量:$LC_COLLATE
意义:经常在profile中被设定,用来控制文件扩展名的顺序与字符串匹配特性。
变量:$LC_CTYPE
意义:用来控制字符串的解释和正则表达式的匹配
变量:$OLDPWD
意义:上一个目录
变量:$PWD
意义:当前目录
变量:$LINENO
意义:当前shell命令的行号
变量:$PATH
意义:路径环境变量
变量:$PIPESTATUS
意义:刚刚结束的管道命令的返回结果
变量:$PPID
意义:父进程的进程号
变量:$PROMPT_COMMAND
意义:显示ps1之前调用的命令
变量:PS1
意义:用户的提示符
变量:PS2
意义:here document中的分割符
变量:PS3
意义:用在select语句中的提示符
变量:PS4
意义:调试shell脚本时(sh -x),每行前面显示的符号
变量:$REPLY
意义:read命令读取到的默认结果存储在该变量中
变量:$SECONDS
意义:显示当前shell已经执行的秒数
变量:$SHELLOPTS
意义:shell的参数
变量:$SHLVL
意义:显示当前bash的深度,同BASH_SUBSHELL有某种类似
变量:$TMOUT
意义:bash shell脚本执行的时间限制参数,如果超过这个时间则推出。
变量:$UID
意义:当前用户的UID
变量:$!
意义:后台执行的第一个进程的pid
变量:$@
意义:位置参数的列表(每个参数被看做一个单词)
变量:$*
意义:位置参数的列表(被看做整个单词)
变量:$_
意义:刚刚执行的命令
变量:$?
意义:刚刚结束的命令的退出状态
变量:$$
意义:当前shell的pid号