Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10202344
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: LINUX

2013-11-27 11:46:26

shell-5-算数运算(算数展开‘(())’双括号语法)
2011-07-18 10:09:54
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://dngood.blog.51cto.com/446195/615178


在$(( ))语法中,shell 提供了完整的算数运算能力,而且使用与c相同运算符与优先级。

语法:

((表达式1,表达式2…))

特点:

1、在双括号结构中,所有表达式可以像c语言一样,如:a++,b--等。

2、在双括号结构中,所有变量可以不加入:“$”符号前缀。

3、双括号可以进行逻辑运算,四则运算

4、双括号结构 扩展了for,while,if条件测试运算

5、支持多个表达式运算,各个表达式之间用“,”分开

参考这篇文章

http://www.cnblogs.com/chengmo/archive/2010/10/19/1855577.html



算数运算符表

运算符                 意义                          顺序           优先级 
++ --           增加或减少,可前置或后置        左至右         高排至低排
+ - ! ~         一元的的正负号,逻辑位与取反    右至左             
* / %           乘法,除法,取余                左至右
+ -             加法,减法                      左至右
<< >>           向左移位,向右移位            左至右
< <= > >=       小于 小于等于,大于 大于等于 左至右
== !=           相等,不等                     左至右
&  |            位的AND,位的OR       左至右
&& ||           逻辑的AND,逻辑的O
? :        条件表达式          右至左
= += -+ /= 
%= &= |= 
<<= >>= ^=      赋值运算符                   右至左

关系运算符
< <= > >= == !=  产生数字结果,1表示为真,0表示为假,例如
[root@master ~]# echo $((1==1))
1
[root@master ~]# echo $((1!=1))
0

逻辑运算符
&& 逻辑与 || 逻辑或 ,任何非零的值为真 1,相反则为假 0
[root@master ~]# echo $(( (1==1) || (1==0) ))        # 1 或 0 为 1
1
[root@master ~]# echo $(( (1==1) && (1==0) ))        # 1 与 0 为 0
0

赋值运算符
[root@master ~]# i=1;echo "$((i++)) $i"              #i++后置式,变量最后+1
1 2
[root@master ~]# i=1;echo "$((++i)) $i"              #++i前置试,变量先+1
2 2

 

本文出自 “dongnan” 博客,请务必保留此出处http://dngood.blog.51cto.com/446195/615178

阅读(525) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~