变量
位置参数变量
当我们执行一个 shell脚本时,如果希望获取到命令行的参数信息,就可以使用到位置参数变量
比如: ./myshell.sh 100 200,这个就是一个执行shell的命令行,可以在myshell脚本中获取到参数信息。
$n:n为数字,$0代表命令本身,$1-$9代表第一到第九个参数,十以上的参数需要用大括号包含,如S{10}
$*:这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体
$@:这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待
$#:这个变量代表命令行中所有参数的个数
预定义变量
shell设计者已经设置好的可以直接使用的变量
$$:当前进程的进程号(PID)
$!:后台运行的最后一个进程的进程号(PID)
$?:最后一次执行的命令的返回状态。如果这个变量的值为0,证明上一个命令正确执行;如果这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确了。
运算符
“$((运算式))"或者"$[运算式]"或者"expr m + n //expression表达式"
注意 expr 运算符间要有空格,如果希望将 expr 的结果赋给某个变量,使用 ``
使用expr表达式的时候需要对 () 和 * 进行转义(使用 "\" )