特殊变量包括:环境变量,只读变量,位置变量,预定义变量
环境变量:PATH , USER , HOSTNAME等等。
PATH是系统执行文件查找的路径,USER是用户变量,不同的用户其$USER是不同的,HOSTNAME是主机名,这些都是在用户登录完毕后自动识别的。
env查看当前系统所有变量
只读变量:只能查看不可更改。
只有重启才能取消。
例如:
#readonly name=hzf
位置变量:位置变量稍微有点特殊,使用 $1,$2,$3 … ${10}, ${11} …表示。
$数字表示脚本文件后跟的第几个参数
预定义变量:$0代表文件本身
$? : 代表上一条命令的结果返回的值,命令执行成功返回0值;失败返回非0值 , return 退出函数时获取的返回值(0-255,超过部分%256取余)
$# :代表脚本后跟的参数个数
$@:不加双引号代表脚本后跟的所有参数,加上双引号会把脚本后跟的每一个参数当成一个个的个体来看待
$*:不加双引号代表脚本后跟的所有参数,加上双引号会把所有参数当成一个整体来看待(此时参数数量为1)