1、语法格式:

  第一种:expr $num1 operator $num2

  第二种:$(($num1 operator $num2))

2、expr 操作符:

注意:这里比较为true,返回 1。只支持整数。

3、实际使用,比较时必须有空格

在实际使用过程中,类似于“|” 这样的管道符号要进行转义,如下:

  num1=100

  num2=200  

  expr $num1 \| $num2

  expr $num1 \& $num2

  expr $num1 \< $num2

  expr $num1 \<= $num2

  expr $num1 \> $num2

  expr $num1 \>= $num2

  expr $num1 = $num2

  expr $num1 != $num2

   expr $num1 + $num2

  expr $num1 - $num2

  expr $num1 \* $num2

  expr $num1 / $num2

  expr $num1 % $num2

4、举例

  $ num1=30

  $ num2=50

  $ expr $num1 \| $num2

  打印出:30

  

  $ expr $num1 + $num2

  打印出:80

  $ num3=`expr $num1 \* $num2`     // 命令替换的形式

  $ echo $num3 

  打印出:1500

  

  对于 $(()) 这种操作,需要赋给一个值,并且里面的符号不用转义。  expr 会直接当成一个命令进行操作

  $ num3=$(($num1*$num2))

  $ echo $num3 

  打印出:1500

  注意:$(()) 进行运算只能进行 加、减、乘、除、求余 运算。

5、大练习

  提示用户输入一个正整数,然后计算 1+2+3+...+num 的值,并打印。 必须对num进行正整数判断,不符合要求,则给出提示,然后重新输入。

#!/bin/bash#计算 1+2+3+...+num 的和,并且num 必须是正整数while true
doread -p "请输入一个正整数:" num# 判断是不是整数,如果不是整数,num + 1 运算会报错,$? 返回值就为2expr $num + 1 &> /dev/nullif [ $? -eq 0 ]; thenif [ `expr $num \> 0` -eq 1 ]; thenfor((i=1; i<=$num; i++))dosum=`expr $sum + $i`doneecho "1+2+...+$num = $sum"exitfiecho "输入的参数不是正整数"elseecho "输入的参数不是一个整数"ficontinue
done

  

转载于:https://www.cnblogs.com/shenqidu/p/10590422.html

Shell 使用 expr 进行数学运算相关推荐

  1. shell 数学运算

    数学运算之 expr expr操作符对照表 比较大小,只能对整数进行比较,需要加空格,linux 保留关键字要转义 num1=30 num2=50 expr $num1 \> $num2 查看上 ...

  2. Linux shell 变量 数学 运算

    出处:http://qujunorz.blog.51cto.com/6378776/1382085 Abstract : 1)  Linux shell 中使用 let , [ ] ,(( )) 三种 ...

  3. Shell脚本攻略03-使用shell进行数学运算

    概述 无论哪种编程语言都少不了算术操作,在这则攻略中,我们将会研究在shell中进行算术运算的各种方法. 理论知识 在Bash shell环境中,可以利用let. (( ))和[]执行基本的算术操作. ...

  4. Linux求平方脚本,Linux Shell脚本系列教程(五):数学运算

    这篇文章主要介绍了Linux Shell脚本系列教程(五):数学运算,本文讲解了使用let.(())和[]进行算术运算.使用expr进行算术运算.使用bc进行算术运算三种方法,需要的朋友可以参考下 在 ...

  5. shell脚本实战-使用shell进行数学运算

    前言 上篇文章我们探讨了shell脚本的基础和变量, 在学习变量的时候我们探讨了环境变量和用户自定义变量,以及一些特殊的用法.无论使用哪种语言都少不了进行算术操作,今天我们来看看如何使用shell脚本 ...

  6. shell脚本编程笔记(二)—— 执行数学运算

    数学运算在编程中也很重要,shell对它的支持并不算好,本文整理一下shell进行数学运算的途径,各种方法的缺点. 一. expr命令 shell最开始处理数学表达式的命令,可以在命令行做算术运算,参 ...

  7. shell脚本基础(环境变量、重定向、数学运算、退出脚本)

    一.使用环境变量 1.环境变量 所谓环境变量,就是用来存储有关shell会话和工作环境信息的特性,这项特性允许你在内存中存储数据,以便程序或shell中运行的脚本能够轻松访问到它们.这也是存储持久数据 ...

  8. shell中的数学运算

    一.shell中支持的算术 算术运算符 说明/含义 +.- 加法(或正号).减法(或负号) *./.% 乘法.除法.取余(取模) ** 幂运算 ++.– 自增和自减,可以放在变量的前面也可以放在变量的 ...

  9. linux shell数学计算器,技术|使用 GNU bc 在 Linux Shell 中进行数学运算

    在 shell 中使用 bc 更好地做算数,它是一种用于高级计算的数学语言. 大多数 POSIX 系统带有 GNU bc,这是一种任意精度的数字处理语言.它的语法类似于 C,但是它也支持交互式执行语句 ...

最新文章

  1. Java 11 快要来了,编译 运行一个命令搞定!
  2. PDU是如何帮助机房安然度夏?如何选择PDU电源配套机柜?
  3. Factory Method模式的误区:Factory Method模式是简化版的Abstract Factory吗?
  4. 2345王牌浏览器网页加载慢怎么办 网页加载慢解决办法
  5. 【python接口自动化-requests库】【三】优化重构requests方法
  6. jstl处理栏目与子栏目_深圳北易:网站SEO优化如何提高网站栏目页排名
  7. 一些php+mysql的开源网上商城
  8. 【免费毕设】ASP.NET+SQL通用作业批改系统设计(源代码+论文)
  9. 轻松掌握namedtuple
  10. CDOJ 1330 柱爷与远古法阵(高斯消元)
  11. php 3种常见设计模式
  12. 【数字信号】基于matlab GUI虚拟信号发生器(各种波形)【含Matlab源码 271期】
  13. Microsoft visio 2013 professional破解软件
  14. 洛谷P2678 [NOIP2015 提高组] 跳石头
  15. DSA815频谱分析仪技术参数
  16. Mac 上删除键(delete)的妙用
  17. 注册好ChatGPT帐号了,按照教程很快搞定
  18. CentOS7中启动Chrome报错ERROR:zygote_host_impl_linux.cc
  19. HTML前台分页样例
  20. 好久不见我亲爱的东东了

热门文章

  1. 【文本标注】文本标注工具brat的使用
  2. Codeforces 1077B Disturbed People(思维题)
  3. 1800 Flying to the Mars 大数 最多不上升序列 简化题意
  4. Brainfuck语言入门
  5. 8种zk-SNARK构建的比较
  6. python提交表单发邮件_通过Mailgun和Python发送带有表单数据的电子邮件
  7. Oracle实现US7ASCII到ZHS16GBK数据迁移正常显示中文
  8. [Vulkan教程]绘制一个三角形/呈现/交换链(Swip chain)
  9. 基于ABP的AppUser对象扩展
  10. Ext中TextField的 label和feild的间距的设定