红联Linux门户
Linux帮助

Shell自带的特殊变量

发布时间:2012-06-19 10:57:41来源:红联作者:empast
$PATH:可执行文件的搜索路径, 一般为/usr/bin/,/usr/X11R6/bin/, /usr/local/bin, 等等

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

$UID:用户ID号

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

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

$IFS:内部域分隔符,这个变量用来决定Bash在解释字符串时如何识别域, 或者单词边界.

$IFS默认为空白(空格, 制表符,和换行符), 但这是可以修改的, 比如, 在分析逗号分隔的数据文件时, 就可以设置为逗号. 注意$*使用的是保存在$IFS中的第一个字符.

$0, $1, $2,..$9:位置参数, 从命令行传递到脚本, 或者传递给函数,或者set给变量

$#:命令行参数 或者位置参数的个数

$*:所有的位置参数都被看作为一个单词.

$?:命令, 函数, 或者是脚本本身的退出状态码(成功为0)

$$:脚本自身的进程ID

$!:运行在后台的最后一个作业的PID(进程ID)
文章评论

共有 4 条评论

  1. a41256198 于 2012-07-19 20:49:38发表:

    shlvl command not found

  2. 942736590 于 2012-06-28 17:41:43发表:

    谢谢楼主分享

  3. honglianqxw123 于 2012-06-28 15:44:55发表:

    路过,了解,学习。
    谢谢各位。

  4. laughtianxia 于 2012-06-26 19:04:34发表:

    ?????????????????????????????????????????????????