沈阳电脑维修网,沈阳上门维修电脑服务
当前位置: 主页 > 程序数据代码>双括号结构_程序数据_shell >

双括号结构_程序数据_shell

时间:2011-12-5来源:沈阳电脑维修网 作者: 吕先生:13889116605点击:
沈阳电脑维修,上门维修电脑
      类似于let命令,((...))结构允许算术计算和求值.它最简单的形式a=$((5+3))会把变量"a"的值设置成"5+3"或8.但是,在Bash中双括号结构也是遵循C风格的变量操作的一种机制.例1.C风格的变量操作  1#!/bin/bash  2#用((...))结构来使用C风格操作符来处理变量.  3  4  5echo  6  7((a=23)) #以C风格来设置一个值,在"="两边可以有空格.  8echo"a(initialvalue)=$a"  9 10((a++))    #C风格的计算后自增. 11echo"a(aftera++)=$a" 12 13((a--))    #C风格的计算后自减. 14echo"a(aftera--)=$a" 15 16 17((++a))    #C风格的计算前自增. 18echo"a(after++a)=$a" 19 20((--a))    #C风格的计算前自减. 21echo"a(after--a)=$a" 22 23echo 24 25######################################################## 26# 注意,就像在C中一样,计算前自增自减和计算后自增自减有一点不同的的副作用 27# 28 29n=1;let--n&&echo"True"||echo"False" #False 30n=1;letn--&&echo"True"||echo"False" #True 31 32# 多谢JeroenDomburg. 33######################################################## 34 35echo 36 37((t=a<45?7:11))  #C风格的三元计算. 38echo"Ifa<45,thent=7,elset=11." 39echo"t=$t"       #Yes! 40 41echo 42 43 44#----------------- 45#复活节彩蛋大礼! 46#----------------- 47# ChetRamey显然在此偷偷地隐瞒了Bash中双括号的C风格结构 48#+(实际上是从ksh中继承来的,两者非常的接近). 49# 在Bash的文档里,Ramey称((...))为shell算术计算, 50#+但它所能做的远远超出这个. 51# 不好意思,Chet,现在秘密已经被揭开了. 52 53#参考"for"和"while"循环中使用((...))结构的章节. 54 55#这个只能在Bash版本2.04以上才能工作. 56 57exit0 
上一篇:嵌套循环_程序数据_shell
下一篇:$RANDOM: 产生随机整数_程序数据_shell
查看[双括号结构_程序数据_shell ]所有评论
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:
推荐内容
关于我们 服务价格 联系我们 企业网站优化 沈阳网站建设 沈阳维修电脑