博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
bash中的数值运算
阅读量:5119 次
发布时间:2019-06-13

本文共 846 字,大约阅读时间需要 2 分钟。

第一种,使用((表达式)):

 

a=3((b=a+2))echo $b

第二种使用let:

 

 

let "c=$a+4"echo $c

 

第三种,使用expr表达式(注意空格不能少):

 

#注意空格和反引号d=`expr 4 + 3`echo $d

第四种,比较常用,就是放在$[ expression]中,其实这才是bash的推荐的标准处理方法

 

a=4b=$[$a-9]#b=-5echo $b

在C风格的for循环中,则可以如下使用:

#!/bin/bashfor (( a=1, b=10; a<=10; a++, b-- ))do    ((c=a*b))    echo $cdone

 

一般bash只能处理整数运算,要处理浮点书,必须借助于bc(bash计算器),基本格式如下:

variable=`echo "option;expression"|bc`

注意上面的反引号(一般位于tab建的上方,感叹号!的左边),不是单引号。

例如要计算3.25/3,精确到小数点后4位:

 

var=`echo "scale=4;3.25/3"|bc`#var=1.0833echo $var

再看一个例子:

a=10.5b=2.7c=`echo "scale=5;$a /$b "|bc`#c=3.88888echo $c

 

 

如果需要计算的浮点表达式比较多,可以放在多行上,格式如下:

 

variable=`bc << EOFoptionsstatementsexpressionsEOF`

下面是一个实际例子:

 

 

#!/bin/basha=1.23432b=2.45c=6.0d=5#注意:#var=ab+cd,ab和cd只是bc中的变量,不能在bash中使用var=`bc << EOFscale=4ab=($a+$b)cd=($c-$d)ab+cdEOF`#var=4.68342echo $var

 

 

转载于:https://www.cnblogs.com/dyllove98/p/3235421.html

你可能感兴趣的文章
20反射、md5加密、以及日志模块logging(复习)
查看>>
15(os、random、sys、)(json、pickle )
查看>>
#python2和python3的区别汇总。
查看>>
17面向对象--三大特性
查看>>
剑指offer——二叉树的深度与平衡二叉树的判断
查看>>
Android逆向之旅---Android应用的汉化功能(修改SO中的字符串内容)
查看>>
关于开源
查看>>
数据相关性分析方法
查看>>
一元二次方程组求解
查看>>
监控文件
查看>>
HDOJ 1556 Color the ball
查看>>
C. Come to a spring outing
查看>>
P2197 [JZOJ/中山市市选] 三核苷酸
查看>>
js知识总结
查看>>
LoadRunner检查点
查看>>
c#将Excel数据导入到数据库的实现代码(转载)
查看>>
数据库表的转置
查看>>
javascript第三方组件
查看>>
linux新手学习之Arch Linux入门经验分享
查看>>
Github使用教程详解
查看>>