2018最新linux云计算集群架构师-第一阶段-Linux操作系统入门到精通-第19章-shell脚本基础-数学运算符
数学运算符
1.expr命令
1)对数字的基本计算,做比较时,输出结果假为0,1为真;特殊符号用转义符
expr 2 \> 5 expr 3 * 5 expr 3 \* 5 expr 3 \+ 5
2)使用$(( ))
expr length "ni hao" #从第2个开始,截取4个字符出来 expr substr "ni hao" 2 4
2.使用$(( ))
格式:$((表达式1,表达2))
特点
1)在双括号结构中,所有表达式可以像c语言一样,如:a++,b--等。a++ 等价于 a=a+1
2)在双括号结构中,所有变量可以不加入:“$”符号前缀。
3)双括号可以进行逻辑运算,四则运算
4)双括号结构 扩展了for,while,if条件测试运算
5)支持多个表达式运算,各个表达式之间用“,”分开
常用的算数运算符
|
运算符 |
意义 |
|
++ -- |
递增及递减,可前置也可以后置 |
|
+ - ! ~ |
一元运算的正负号 逻辑与取反 |
|
+ - * / % |
加减乘除与余数 |
|
< <= > >= |
比较大小符号 |
|
== != |
相等 不相等 |
|
>> << |
向左位移 向右位移 |
|
& ^ | |
位的与 位的异或 位的或 |
|
&& || |
逻辑与 逻辑或 |
|
? : |
条件判断 |
实例
b=$((1+2)) echo $b echo $((2*3)) #递增和递减 echo $((b++)) echo $((++b)) #说明: a++或a--为先赋值再+1或减1 ; ++a或--a为先加1或减1,然后再进行赋值 #求1到100的和 echo $((100*(1+100)/2))
posted on 2019-11-07 22:03 herisson_pan 阅读(14) 评论(0) 收藏 举报
浙公网安备 33010602011771号