我正在使用一个串行终端为我们的实验室实验提供输入。我发现使用
$ echo "5X5"只返回一个"5X5"字符串。有没有执行乘法运算的命令?
发布于 2012-06-15 03:20:09
是的,您可以使用bash's built-in Arithmetic Expansion $(( ))做一些简单的数学运算
$ echo "$((5 * 5))"
25查看Shell Arithmetic section in the Bash Reference Manual以获取完整的运算符列表。
为了完整性,正如其他人指出的那样,如果您需要任意精度,bc或dc会更好。
发布于 2012-06-15 03:21:44
对于更高级和更精确的数学,可以考虑使用bc(1)。
echo "3 * 2.19" | bc -l
6.57发布于 2012-06-15 03:30:28
内部方法
Bash通过$(( expression ))支持arithmetic expansion。例如:
$ echo $(( 5 * 5 ))
25外部方法
许多实用程序都提供了算术运算,包括bc和expr。
$ echo '5 * 5' | /usr/bin/bc
25
$ /usr/bin/expr 5 \* 5
25https://stackoverflow.com/questions/11039876
复制相似问题