shell变量
变量名是以字母或下划线(_)开头,后面可以跟上零个或多个字母及数字字符或下划线
variable=value
echo $variable
未定义的变量值为空
内建的整数算术操作
$((expression))
expression是包含shell 变量和操作符的算术表达式.有效的shell变量必须包含数字值,
$(()) 操作符
可用的操作符可是不少,其中包括基本的6种:"+,-,*,/,%和**
echo $((8#100))
单引号
忽略引用的所有特殊字符
message='I must say,this sure is fun'
echo $message
I must say,this sure is fun
双引号
则忽略引用的大部分特殊字符
file=*
echo "$file"
*
echo '$file'
$file
如果想获得变量被替换后的值,但是不希望shell 随后再解析替换后出现的特殊字符,可以将变量放进双括号中
反斜线
反斜线转义字符
命令替换
反撇号或者$(...)
`command`
$(command)
expr 内建的整数算术
传递参数
$# 传递给脚本或函数的参数个数
$0 当前脚本的文件名
$n 传递给脚本或函数的参数,n 是一个数字,表示第n个参数
$* 传递给脚本或函数的所有参数
$@ 传递给脚本或函数的所有参数,
$? 上个命令的退出状态
$$ 当shell进程ID,对于shell脚本,就是这些脚本所在的进程ID