网站搜索

在 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

2. 使用expr命令

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

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

expr 3 + 5
expr 15 % 3
expr 5 \* 3
expr 5 – 3
expr 20 / 4

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

让我们看一些例子:

expr 5 = 3
expr 5 = 5
expr 8 != 5
expr 8 \> 5
expr 8 \< 5
expr 8 \<= 5

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

NUM=$(( 1 + 2))
echo $NUM
NUM=$(expr $NUM + 2)
echo $NUM

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

expr length "This is linux-console.net"

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

man expr

3. 使用bc命令

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

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

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

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

bc 

以下示例演示如何在命令行上以非交互方式使用 bc

echo '3+5' | bc
echo '15 % 2' | bc
echo '15 / 2' | bc
echo '(6 * 2) - 5' | bc

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

echo '12/5 | bc'
echo '12/5 | bc -l'

4. 使用awk命令

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 命令用于将整数分解为质因数。例如:

factor 10
factor 127
factor 222
factor 110  

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