linux脚本let命令,Shelllet命令:对整数进⾏数学运算
let 命令和双⼩括号 (( )) 的⽤法是类似的,它们都是⽤来对整数进⾏运算,读者已经学习了《Shell (())》,再学习 let 命令就相当简单了。
注意:和双⼩括号 (( )) ⼀样,let 命令也只能进⾏整数运算,不能对⼩数(浮点数)或者字符串进⾏运算。
Shell let 命令的语法格式为:
let 表达式
或者
let "表达式"
或者
let '表达式'
它们都等价于((表达式))。
当表达式中含有 Shell 特殊字符(例如 |)时,需要⽤双引号" "或者单引号' '将表达式包围起来。
和 (( )) 类似,let 命令也⽀持⼀次性计算多个表达式,并且以最后⼀个表达式的值作为整个 let 命令的执⾏结果。但是,对于多个表达式之间的分隔符,let 和 (( )) 是有区别的:let 命令以空格来分隔多个表达式;
linux循环执行命令脚本(( )) 以逗号,来分隔多个表达式。
另外还要注意,对于类似let x+y这样的写法,Shell 虽然计算了 x+y 的值,但却将结果丢弃;若不想这样,可以使⽤let sum=x+y将 x+y 的结果保存在变量 sum 中。
这种情况下 (( )) 显然更加灵活,可以使⽤$((x+y))来获取 x+y 的结果。请看下⾯的例⼦:[c.biancheng]$ a=10 b=20
[c.biancheng]$ echo $((a+b))
30
[c.biancheng]$ echo let a+b #错误,echo会把 let a+b作为⼀个字符串输出
let a+b
Shell let 命令实例演⽰
【实例1】给变量 i 加 8:[c.biancheng]$ i=2
[c.biancheng]$ let i+=8
[c.biancheng]$ echo $i
10
let i+=8 等同于 ((i+=8)),但后者效率更⾼。
【实例2】let 后⾯可以跟多个表达式。[c.biancheng]$ a=10 b=35
[c.biancheng]$ let a+=6 c=a+b #多个表达式以空格为分隔
[c.biancheng]$ echo $a $c
16 51
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论