Shell——运算符

declare命令

declare声明变量类型

declare [+/-] [选项] 变量名
选项:
-:给变量设定类型属性
+:取消变量的类型属性
-a:将变量声明为数组型
-i:将变量声明为整数型
-x:将变量声明为环境变量
-r:将变量声明为只读变量(设置为只读之后无法修改,无法删除,无法取消只读)
-p:显示指定变量的被声明的类型

声明数组变量

# 定义数组
array[0]=z
declare -a array[1]=d
echo ${array} # 打印array[0]
echo ${array[1]} # 打印array[1]
echo ${array[*]} # 打印数组所有内容

声明环境变量

# export实际上就是declare -x
declare -x test =123

数值运算方法

aa=11
bb=22

方法一:声明类型

# 声明cc为整型
declare -i cc=$aa+$bb

方法二:expr

# 注意“+”左右两侧必须有空格,如果不含有空格会当做字符串处理
dd=$(expr $aa +$bb)    

方法三:$((运算式)) 或者 $[运算式]

ee=$(($aa+$bb))
ff=$[$aa+$bb]

运算符优先级

优先级数值越大优先级越高

优先级 运算符 说明
13 -,+ 单目负,单目正
12 !,~ 逻辑非,按位取反或补码
11 *,/,% 乘,除,取模
10 +,- 加,减
9 <<,>> 按位左移,按位右移
8 <+,>=,<,> 小于等于,大于等于,小于,大于
7 ==,!= 等于,不等于
6 & 按位与
5 ^ 按位异或
4 | 按位或
3 && 逻辑与
2 || 逻辑或
1 =,+=,-=,/=,%=,&=,^=,|=,<<=,>>= 赋值,运算且赋值

变量测试

变量测试

你可能感兴趣的:(Shell——运算符)