如何使用Linux命令行进行基本数学运算

您可以使用Linux bash或命令行来执行基本和复杂的算术和布尔运算。 expr,jot,bc和factor等命令可帮助您找到复杂问题的最佳数学解决方案。本文介绍了这些命令,并提供了一个转向更有用的数学解决方案的基本示例。

本文中描述的命令和过程在Ubuntu 18.04 LTS系统上运行。

它使用Ubuntu命令行Terminal来执行所有数学运算。您可以使用系统破折号或Ctrl + Alt + T快捷方式打开终端。

expr命令

Linux expr或expression命令是用于执行数学计算的最常用命令。您可以使用此命令来执行诸如加,减,乘,除,递增值,甚至比较两个值之类的功能。本节介绍了执行上述计算的语法,并显示了如何在Ubuntu命令行上使用expr命令执行高效数学运算。

加法

您可以使用expr命令将两个或多个数字相加,如下所示:

$ expr数字1 +数字2

范例:

$ expr 100 + 10

数学:加法

减法

您可以使用expr命令对两个或多个数字进行减法,如下所示:

$ expr number1 – number2

范例:

$ expr 100 - 10

数学:减法

乘法运算

您可以使用expr命令将两个或多个数字相乘,如下所示:

$ expr number1 * number2

范例:

$ expr 10 * 10

数学:乘法

以下是Linux命令行上数字乘法的不正确语法,因为该命令行使用一个简单的星号作为对当前目录中所有文件的引用。

$ expr 10 * 10

正确转义乘法符号

您可以使用expr命令将一个数除以另一个,如下所示:

$ expr数字1 /数字2

范例:

$ expr 100 / 10

师

增加变量

要在Linux上递增变量,请首先按如下方式定义它:

$ count_variable=0

然后,使用expr命令通过以下公式执行增量操作:

$ count_variable=`expr $count_variable + 1`

使用以下命令回显变量值将打印第一个已定义变量的增量值。

$ echo $count_variable

增加变量

比较方式

您还可以使用expr命令查看一个数字是否大于另一个数字。

$ expr number1 > number2

范例:

$ expr 20 > 10

数学:比较

结果值为1表示第一个数字大于第二个数字。另一方面,结果值为0表示第一个数字小于或等于第二个数字。

范例:

$ expr 10 > 20

比较例2

您还可以将以下语法与expr命令一起使用,以检查两个数字是否相等。

$ expr数字1 =数字2

范例:

$ expr 10 = 10
$ expr 10 = 15

平等比较

结果值为1表示第一个数字等于第二个数字。另一方面,结果值为0表示两个数字不相等。

在上面的示例中,您可以用肉眼看到比较的两个数字是否相等。那么,该操作有何帮助?

在您的程序期间,您想知道某些数字的计算平均值是否等于10。在这里,您可以使用expr命令的最佳用法来将“ mean”变量的结果与10进行比较,并根据该结果执行进一步的操作。

$ average=10
$ expr $average = 10

平均值

有效使用expr命令

让我们看一个例子,其中expr命令真正有效。在此示例中,expr命令用于计算给定的10个孩子和122个糖果,每个孩子得到多少个糖果。该程序还计算所有孩子得到相同数量的糖果后剩余的糖果数量。

$ children=10
$ sweets=122
$ PerChildShare=`expr $sweets / $children`
$ RemainingSweets=`expr $sweets - $children * $PerChildShare`

echo $PerChildShare
echo $RemainingSweets

使用expr命令

输出完美地显示了每个孩子的公平份额为12,而底池中剩下2。

点动命令

Linux jot命令可帮助您基于指定为起始编号的数字以及要在其后显示的值的数目来创建数字列表。本节描述了通过jot执行计算的语法,并显示了如何在Ubuntu命令行上使用jot命令执行生产数学。

要在Ubuntu上使用jot命令,您可能需要先安装Athena-jot。

只有授权人员可以在Ubuntu上添加/删除和配置软件,因此请以sudo键入以下命令:

$ sudo apt install athena-jot

安装雅典娜小记

系统可能会请求Y / n选项以确认安装将继续。输入Y并按Enter继续,该软件将安装在您的系统上。

在数字y之后输出数字x

您可以使用jot命令在y之后打印x值。为此,请使用以下命令。

$记号x y

下面的示例阐明了该问题。

$ jot 5 1

在数字y之后输出数字x

在此示例输出中,数字1(y)后跟5(x)个值的列表。

将x的数字向后打印到数字y之后的数字z

您还可以使用jot命令在以数字z结尾的数字y之后向后打印x值。为此,请使用以下语法。

$记号x y z

下面的示例阐明了该问题。

$ jot 9 10 2

将x的数字向后打印到数字y之后的数字z

在此示例输出中,数字9(x)在数字10(y)之前突出显示,直到列表达到数字2(z)。

高效地使用jot命令

让我们举个例子,其中jot命令实际上是有效的。本示例使用jot命令打印从1月1日(y值)开始的第15天(x值)。

$ for i in `jot 15 1`; do echo January $i; done

输出为:

高效地使用jot命令

我使用了for循环,将jot命令的输出作为变量i的输入值。

因子命令

顾名思义,Linux factor命令用于计算给定数字的因子值。

语法:

$要素编号

范例:

因子命令示例

在上面的示例中,数字13没有其他元素,因此您可以看到factor命令如何输出多个具有特定数字(而不是13)的因子。

bc命令

在bash中执行复杂操作时,bc命令非常有用。该命令还可以执行比较,处理布尔值,计算平方根,正弦,余弦,切线等。只需将公式通过管道传送到bc命令,如下所示:

$ echo“ math_expression” | BC

输出显示公式的结果。

范例:

$ echo "10+10/2-(2*2)" | bc

BC命令示例

圆周率的计算

bc命令从不逃避精度,您输入的字符串非常简单,因此您可以使用它来计算pi的值到所需的十进制数。

在下面的示例中,通过指定四舍五入到最接近的整数的比例值来输出pi的值。

$ echo "scale=2; 4*a(1)" | bc -l

在Linux命令行上计算pi

小数位数为2,因此pi中的结果小数位数后两位。

echo "scale=10; 4*a(1)" | bc -l

设置更高的比例值

小数位数为10,因此pi中的结果小数位数后为10。

执行bash数学

您可以使用一组双括号来进行简单的bash数学运算。此技术允许bash执行算术和布尔运算。

算术运算

以下算术运算列表可以在Linux bash上执行。

+,–加,减
++,-递增,递减
*,/,%乘法,除法,余数
**指标值

范例1:

$ ((x=10))
$ (( e = e + 5 ))
$ echo $e

范例2:

$ ((x=10))
$ ((x--))
$ echo $e

范例3:

$ ((x=10))
$ ((x=x**2))
$ echo $e

布尔与逻辑

另外,bash math允许您使用可疑括号内的布尔和逻辑表达式执行数学计算。

范例:

$ ((x=10)); ((y=5))

if (( x > y )); then echo $x; fi

布尔重击数学示例

本示例比较两个变量并仅在x的值大于y时打印。

现在,您可以使用本文介绍的命令语法和示例通过Linux bash执行基本的数学运算。这是执行更复杂的操作(例如使用bash脚本编写程序)的基础。另外,您可以输入用户的值,处理输入,并执行可以基于这些值输出结果的交互式计算。

如何使用Linux命令行进行基本数学运算

Sidebar