详解Linux终端运算符

Linux终端常用的运算符有bash 、let命令、expr命令、bc命令 awk命令factor命令等,本篇文章重点为大家讲解一下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

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

Linux Bash Shell中的算法

2.使用expr命令

expr命令计算表达式并将提供的表达式的值打印到标准输出。 我们将研究使用expr进行简单数学,进行比较,增加变量值和查找字符串长度的不同方法。以下是使用expr命令进行简单计算的一些示例。 请注意,许多运算符需要对shell进行转义或引用,例如*运算符(我们将在表达式的比较下查看更多)。

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

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

在Linux中使用expr命令的基本算法

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

我们来看一些例子:

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

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

比较Linux中的算术表达式

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

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

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

变量的增量值

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

$ expr length "这里是Linux公社 www.linuxidc.com"

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

有关上述运算符含义的更多信息,请参见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

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

以非交互模式启动bc

下面的示例展示了如何在命令行上非交互式地使用bc。

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

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

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

linuxidc@linuxidc:~/www.linuxidc.com$ echo '13/5' | bc
2
linuxidc@linuxidc:~/www.linuxidc.com$ echo '13/5' | bc -l
2.60000000000000000000

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

用浮动数字做数学

4.使用Awk命令

Awk是GNU/Linux中最着名的文本处理程序之一。 它支持加法,减法,乘法,除法和模数运算符。 它对于进行浮点数学运算也很有用。您可以使用它来执行基本数学运算,如图所示。

$ awk 'BEGIN { a = 6; b = 3; print "(a + b) = ", (a + b) }'
$ awk 'BEGIN { a = 6; b = 3; print "(a - b) = ", (a - b) }'
$ awk 'BEGIN { a = 6; b = 3; print "(a *  b) = ", (a * b) }'
$ awk 'BEGIN { a = 6; b = 3; print "(a / b) = ", (a / b) }'
$ awk 'BEGIN { a = 6; b = 3; print "(a % b) = ", (a % b) }'

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

5.使用factor命令

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

linuxidc@linuxidc:~/www.linuxidc.com$ factor 18
18: 2 3 3
linuxidc@linuxidc:~/www.linuxidc.com$ factor 133
133: 7 19
linuxidc@linuxidc:~/www.linuxidc.com$ factor 23
23: 23
linuxidc@linuxidc:~/www.linuxidc.com$ factor 200
200: 2 2 2 5 5

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

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/202726.html<

(0)
运维的头像运维
上一篇2025-04-06 08:48
下一篇 2025-04-06 08:49

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注