在 Linux 终端中进行算术的 5 种有用方法

在本文中,我们将向您展示在 Linux 终端中进行算术运算的各种有用方法。在本文结束时,您将学习在命令行中进行数学计算的基本不同实用方法。

让我们开始吧!

1.使用Bash shell

在 Linux CLI 上进行基本数学运算的第一个也是最简单的方法是使用双括号。以下是我们使用变量中存储的值的一些示例:

$ ADD=$(( 1 + 2 ))
$ echo $ADD
$ MUL=$(( $ADD * 5 ))
$ echo $MUL
$ SUB=$(( $MUL - 5 ))
$ echo $SUB
$ DIV=$(( $SUB / 2 ))
$ echo $DIV
$ MOD=$(( $DIV % 2 ))
$ echo $MOD
Linux Bash Shell 中的算术

2. 使用expr命令

表达式命令计算表达式并将提供的表达式的值打印到标准输出。我们将看看不同的使用方式表达式用于进行简单的数学运算、进行比较、递增变量的值以及查找字符串的长度。

以下是使用以下方法进行简单计算的一些示例表达式命令。请注意,对于 shell,许多运算符需要转义或加引号,例如*运算符(我们将在表达式比较下了解更多内容)。

$ expr 3 + 5
$ expr 15 % 3
$ expr 5 \* 3
$ expr 5 – 3
$ expr 20 / 4
在 Linux 中使用 expr 命令进行基本算术

接下来,我们将介绍如何进行比较。当表达式计算结果为 false 时,expr 将打印一个值0,否则打印1

让我们看一些例子:

$ expr 5 = 3
$ expr 5 = 5
$ expr 8 != 5
$ expr 8 \> 5
$ expr 8 \< 5
$ expr 8 \<= 5
比较 Linux 中的算术表达式

您还可以使用表达式增加变量值的命令。看一下下面的例子(同样,你也可以减少变量的值)。

$ NUM=$(( 1 + 2))
$ echo $NUM
$ NUM=$(expr $NUM + 2)
$ echo $NUM
增加变量的值

我们还看看如何使用以下方法查找字符串的长度:

$ expr length "This is Tecmint.com"
查找字符串的长度

有关更多信息,尤其是有关上述运算符含义的信息,请参阅表达式手册页:

$ man expr

3. 使用bc命令

是一个命令行实用程序,提供您期望从简单的科学或金融计算器获得的所有功能。它对于进行浮点数学特别有用。

如果BC命令未安装,您可以使用以下命令安装:

$ sudo apt install bc   #Debian/Ubuntu
$ sudo yum install bc   #RHEL/CentOS
$ sudo dnf install bc   #Fedora 22+

安装后,您可以通过向其传递参数以交互模式或非交互模式运行它 - 我们将研究这两种情况。要以交互方式运行它,请键入命令公元前在命令提示符下并开始做一些数学运算,如图所示。

$ bc 
以非交互模式启动 bc

以下示例展示了如何使用公元前在命令行上以非交互方式。

$ echo '3+5' | bc
$ echo '15 % 2' | bc
$ echo '15 / 2' | bc
$ echo '(6 * 2) - 5' | bc
在 Linux 中使用 bc 做数学

-l标志用于默认比例(小数点后的数字)20, 例如:

$ echo '12/5 | bc'
$ echo '12/5 | bc -l'
用浮点数做数学题

4. 使用awk命令

是 GNU/Linux 中最著名的文本处理程序之一。它支持加、减、乘、除和模算术运算符。它对于进行浮点数学也很有用。

您可以使用它来进行基本数学计算,如图所示。

$ awk 'BEGIN { a = 6; b = 2; print "(a + b) = ", (a + b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a - b) = ", (a - b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a *  b) = ", (a * b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a / b) = ", (a / b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a % b) = ", (a % b) }'
使用 awk 命令进行基本数学运算

如果您是新手awk,我们有一套完整的指南来帮助您开始学习它:。

5. 使用factor命令

因子命令用于将整数分解为质因数。例如:

$ factor 10
$ factor 127
$ factor 222
$ factor 110  
Linux 中的数字因式分解

就这样!在本文中,我们解释了在 Linux 终端中进行算术的各种有用方法。请随时通过下面的反馈表提出任何问题或分享对本文的任何想法。