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