源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

通过shell进行数学运算的多种方式

  • 时间:2021-06-10 00:03 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:通过shell进行数学运算的多种方式
在Bash中, bash的数学运算有点别扭,很难适应和记住, 只好写个博文, 方便以后翻翻看. 有四种方式可以进行数学运算: 一、let命令
[u]复制代码[/u] 代码如下:
#/bin/bash num1=13 num2=14 let sum=$num1+$num2 echo $sum #自增 let sum++ #自减 let sum-- #简写形式 let sum+=1 let sum-=2 #顺便吐槽下,let sum=(1+3)*(2+2)居然不行, 果然很烂有没有!
二、 $[]形式
[u]复制代码[/u] 代码如下:
#!/bin/bash sum = $[99+88] #[]也使用变量 num1=11 num2=22 sum=$[$num1+$num2]
三、 $(())方式
[u]复制代码[/u] 代码如下:
#!/bin/bash sum=$((1+2)) # $(())里可以使用()进行优先级运算安排 sum=$(( (1+2)*3 )) echo $sum #9
四、 另外还可以使用expr命令, 这个命令需要操作数与操作符号有空
[u]复制代码[/u] 代码如下:
#!/bin/bash expr 3 + 4 #7 sum=`expr 33 + 44`#33后有空格, "+" 后有空格, 要是写的是 sum=`expr 3+4`, echo $sum将会是33+44 echo $sum #77
上面4种方式不支持浮点数运算,要进行浮点数运算的话, 应该使用bc命令,语法格式比较简单:
[u]复制代码[/u] 代码如下:
#!/bin/bash sum=`echo 222.222+333.333 | bc` echo $sum #sum=`echo 12.228222+(22222*2) | bc`居然不行, 果断鄙视之.
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部