1.特殊变量
$0: 获取当前执行脚本的名,
[root@master shell]# sh 0.sh
0.Sh
$n:获取当前执行的shell脚本传入第n个参数。
$#:传入shell脚本参数的个数。
[root@master shell]# sh 1.sh 1 2 3
1 2 3
3
$?:显示最后命令退出的状态,0为无错误,1为有错误,2为权限不够,
$$: 是当前脚本运行的进程号ID
$*(强调整体) //所有参数列表,代表"$1 $2 … $n",即当成一个整体输出,每一个变量参数之间以空格隔开。
$@(强调独立) //所有参数列表,代表"$1" "$2" … "$n" ,即每一个变量参数是 独立的 。也是全部输出。
2.字符串变量
echo ${value:2}:删除前两个字符,从第三个开始输出。
echo ${value:2:3}:从第二个开始取,取3个字符。
3.变量替换
${value:-world}:判断value变量为空,或没定义,则给value赋值world
4. 计算变量长度
seq -s “” 100:-s指定分隔符,从1数到100
expr length “$char” : char变量中字符的个数
echo {#char}:char变量中字符的个数
5. 数值计算运算
(()):只用来计算整数之间的运算
bc: 不仅能计算整数之间的运算,又能实现小数之间运算
对于除法中,要保留小数,具体保留的小数位数,可以用scale
6.变量输入 read
语法格式:
read 【参数】【变量名】
常用参数:
-p :设置提示信息;
-t:默认超时时间,单位默认秒;
将输入的数字赋值给a1和a2