一般而言,计算机保存数据有两种方式:字符和数值

bash变量类别:

  本地变量:(局部变量),作用范围仅限当前源程序文件,仅对当前的shell进程有效

  环境变量:作用范围是当前shell及其子shell(子shell可以在bash中再次输入bash)

    使用export VARNAME可以将本地变量声明为环境变量

    如果VARNAME没有值,可以使用export VARNAME=value,声明为环境变量

    也可以 declare -x VARNAME=value,直接声明为环境变量

  查看所有环境变量:

    env  printenv  export

 declare(声明)

-i 声明为整型  -x 声明为环境变量  -a 声明为数组  -r 声明变量为只读

赋值表达式:

AGE=23

撤销变量 unset VARNAME

只读变量 readonly VARNAME

VAR1=${VAR2-word},如果VAR2有值,那么VAR1就等于VAR2,如果VAR2没有值,那么VAR1就等于word

特殊变量 $?,引用前一个命令的执行状态返回值

程序返回值:
程序自身执行的返回值
程序执行状态的返回值 echo $?(成功的为0,1-255的值为失败,1,2,127,系统留用)

如果变量为字符串,那么声明的时候需要加上引号

ANIMAL=pig
echo "There are some $ANIMALs" 是得不到想要的结果的
echo "There are some ${ANIMAL}s"这样就可以,需要用{}括起来

bash中引号分为 单引号(表示强引用) 双引号(表示弱引用)反引号(表示命令替换)