变量

    Bash中没有数据类型。变量只能包含数字或者由一个或多个字符组成的字符串。你可以创建三种变量:局部变量,环境变量以及作为 位置参数 的变量。

    局部变量 是仅在某个脚本内部有效的变量。它们不能被其他的程序和脚本访问。

    我们可以用local关键字声明属于某个函数的局部变量。这样声明的变量会在函数结束时消失。

    环境变量 是对当前shell会话内所有的程序或脚本都可见的变量。创建它们跟创建局部变量类似,但使用的是export关键字。

    有一张更全面的Bash环境变量列表。

    位置参数 是在调用一个函数并传给它参数时创建的变量。下表列出了在函数中,位置参数变量和一些其它的特殊变量以及它们的意义。

    Parameter Description
    $0 脚本名称
    $1 … $9 第1个到第9个参数列表
    ${10} … ${N} 第10个到N个参数列表
    $* or 除了$0外的所有位置参数
    $# 不包括$0在内的位置参数的个数
    $FUNCNAME 函数名称(仅在函数内部有值)

    变量可以有 默认 值。我们可以用如下语法来指定默认值: