Bash 中的浮点运算
这篇简短的文章描述了如何在 GNU BASH(Shell 脚本)中直接在命令提示符下或在 shell 脚本中快速执行浮点计算。
如果您使用数字,在命令提示符 (shell) 或 shell 脚本中执行快速浮点计算可能会有所帮助。 本文介绍了以下四种在 Bash 中进行浮点运算的方法:
- 使用 bc 命令的任意精度计算器方法。
- 使用awk模式扫描和处理方法。
- 使用 perl 命令方法。
- 使用python命令方法。
Bash 中的整数运算
可以在 Bash 脚本中使用命令行上的 expr 命令或方括号来计算表达式 $[1+1] 来轻松执行仅整数运算。 这显示在下面的代码中:
#!/bin/bash
echo $[2 + 1]
这将生成以下输出:
但这些只是整数计算。 如果在这些计算中答案是浮点数,那么它只显示它的整数部分。
要执行浮点运算,我们需要下面讨论的工具的帮助。
Bash 中的浮点运算
可以使用多种工具在 Bash 中执行浮点算术运算。 但是,本文将探讨四种使用最广泛且最容易获得(在所有 UNIX 或 Linux 操作系统系列中)的工具。
在 Bash 中使用基本计算器 (bc) 进行浮点运算
对于命令行计算器,请使用 bc 命令。 它相当于一个简单的计算器,我们可以用它来进行简单的数学计算。
任何编程语言中最基本的运算都是算术运算。 bc 和 expr 命令在 Linux 或 Unix 操作系统中可用,用于执行数学运算。
这些命令可以计算 shell 脚本或 Bash 中的算术表达式。
以下脚本将计算浮点数的加法和除法并显示屏幕结果。
#!/bin/bash
echo "Addition: "
echo '1.5 + 2.5' | bc -l
echo "Division"
echo '2.1/3.2' | bc -l
这将给出以下输出:
在 Bash 中使用 awk 命令进行浮点运算
实数或浮点数包含小数部分。 在 awk 中,所有数值均由双精度浮点数表示。
换句话说,awk中的所有数字都是浮点数,也就是说所有的计算都使用这些数字。
awk 命令的好处是它在所有类 UNIX 操作系统或 Linux 发行版中都可用,因为它相当古老并且已经使用了很长时间。
以下脚本使用 awk 计算两个浮点数的乘法和除法。
#!/bin/bash
echo "Multiplication: "
echo - | awk '{print 2.1 * 3.2}'
echo "Division"
echo - | awk '{print 2.1 / 3.2}'
这将给出以下输出:
在 Bash 中使用 perl 命令进行浮点运算
Perl 是一种编程语言,通常包含在所有 Linux 发行版或其他类 UNIX 操作系统的软件包中。 perl 命令可以在 Bash 中使用,它有助于在 Linux 中执行浮点算术运算。
它可以执行所有操作,如加法、减法、乘法、除法和赋值运算符。
以下脚本在 Linux 中使用 perl 命令计算两个浮点数的减法和除法:
#!/bin/bash
echo "Subtraction: "
perl -e 'print 4.1 - 6.2'
echo "Division"
perl -e 'print 4.1 / 2.2'
这将给出以下输出:
在 Bash 中使用 python 命令进行浮点运算
就像 Perl 一样,Python 是另一种广泛用于所有编程领域的语言。 这是一种经常使用的语言,有时会预装在您的 Linux 发行版中。
python 命令有助于在 Bash 脚本中执行浮点算术运算。 它可以执行所有操作,如加法、减法、乘法、除法和赋值运算符。
以下脚本将使用 python 命令计算两个浮点数的加法和除法:
#!/bin/bash
echo "Addition: "
python -c 'print 4.1 + 6.2'
echo "Division"
python -c 'print 4.1 / 2.2'
这将给出以下输出:
总结
在 Unix 或 GNU Bourne Again Shell (Bash) 下,至少有四种方法可以在命令行或脚本中执行浮点运算。 这些是 awk、perl、python 和 bc 命令。
Unix 系统可能预装了 AWK、BC 和 Perl。 虽然 Python 仍然不如 PERL 流行,但它现在已经相当普遍了。
与通常默认为 32 位或 64 位精度浮点的其他计算器不同,BC 具有作为任意精度计算器的独特优势。
相关文章
在 Bash 中运行 find -exec 命令
发布时间:2024/03/14 浏览次数:127 分类:操作系统
-
本文将演示如何使用 find 命令的 -exec 参数来使用 find 命令定位文件中的任何文本。