Bash 中的浮点运算

let 运算符仅适用于整数算术。
对于浮点运算,我们可以使用 GNU bc 计算器,如下例所示:

echo 32.0+1.4 | bc

算术的替代语法

反引号(反单引号)可用于计算算术表达式,如下例所示:

echo `expr $m + 18`

这会将变量“m”的值加 18,然后打印出结果。

要将计算值分配给变量,我们可以使用等号而不带空格:

m=`expr $m + 18`

另一种计算算术表达式的方法是使用双括号。
例如:

(( m*=4 ))

这将使变量“m”的值增加四倍。

在Bash 脚本中进行计算

尽管 Bash 是一种脚本语言,但它具有通用编程语言的大部分功能。
这包括算术功能。

使用 let 命令生成表达式的算术计算

有许多语法选项可用于调用表达式的算术计算。

也许最易读的是 let 命令。
例如:

let m=(4 * 1024)

将计算 4 乘 1024 并将结果分配给变量“m”。

我们可以通过添加 echo 语句来打印结果:

echo $m

可用的算术运算类似于 Java 和 C 等标准编程语言中的算术运算。
除了乘法,如上所示,我们还可以使用加法:

let m=(5 + 5)

或者减法:

let m=(10 - 2)

或者除法:

let m=(10/2)

或者取模(整数除法后的余数):

let m=(11/2)

当将运算应用于分配结果的同一变量时,我们可以使用标准算术速记赋值运算符,也称为复合赋值运算符。
例如,对于加法:

(( m+=15 ))

这相当于“m = m + 15”。
对于减法:

(( m-=3 ))

这相当于“m = m 3”。
对于除法:

(( m/=5 ))

这相当于“m = m/5”。
对于模数:

(( m%=10 ))

这相当于“m = m % 10”。

此外,我们可以使用递增和递减运算符:

(( m++ ))

相当于“m = m + 1”。

(( m-- ))

相当于“m = m - 1”。

日期:2020-07-15 11:16:51 来源:oir作者:oir