shell脚本语法(复习)

expr数值运算工具

aa=11
bb=22
给变量aa和变量bb赋值
dd=$(expr $aa + $bb)
dd 的值是 aa 和 bb 的和。注意“ + ”号左右两侧必须有空格
“$((运算式))”或“$[运算式]”
ff=$(( $aa+$bb ))
gg=$[ $aa+$bb ]

source, sh script, ./script

sh script

这里写图片描述

source, ./script

这里写图片描述


条件判断命令test
test n1 -参数 n2(或 –参数 表达式)
真返回0,假返回1。

指令:
-lt 小于
-le 小于等于
-gt 大于
-ge 大于等于
-eq 等于
-ne 不等于

read 变量1 [变量2 …]

可以从键盘上读取多个变量的值,用户输入数据时,以空格
或者Tab键作为分隔。
如果输入的数据个数不够,则从左到右对应赋值,没有输入
的变量为空;
如果输入的数据个数超了,则从左到右对应赋值,最后一个
变量被赋予剩余的所有数据。
-p:指定读取值时的提示符;
read –p “please intput a num:”num

普通数组定义

可以在单行中使用一列值来定义一个数组:
array_var = (1 2 3 4 5 6)
这些值将会存储在以0为起始索引的连续位置上
另外,还可以将数组定义成一组“索引-值”:
array_var[0]="test1"

关联数组定义

可以使用任意的字符串作为下标(不必是整数)来访问数组元素
使用关联数组之前,需要使用命令declare -A array 进行显示声明
name=(jim tom lucy)
declare -A phone
phone=([jim]=135 [tom]=136 [lucy]=158)

语法 描述

${!array[*]} 取关联数组所有键
${!array[@]} 取关联数组所有键
${array[*]} 取关联数组所有值
${array[@]} 取关联数组所有值
${#array[*]} 关联数组的长度
${#array[@]} 关联数组的长度

猜你喜欢

转载自blog.csdn.net/wangyeshun/article/details/82391254