首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Shell 基本运算符--算数运算符

Shell 基本运算符--算数运算符

原创
作者头像
陈不成i
修改于 2021-06-22 14:31:19
修改于 2021-06-22 14:31:19
1K0
举报
文章被收录于专栏:ops技术分享ops技术分享

Shell和其他编程语言一样,支持多种运算符,包括:

  • 算数运算符
  • 关系运算符
  • 布尔运算符
  • 字符串运算符
  • 文件测试运算符

原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。 expr 是一款表达式计算工具,使用它能完成表达式的求值操作。 两个数相加(注意使用的是反引号 ` 而不是单引号 ') 实例

  1. #!/bin/bash
  2. val=`expr 2 + 2`
  3. echo "两数之和为 : $val"

执行脚本,输出结果如下所示:

  1. 两数之和为 : 4

两点注意: 表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,这与我们熟悉的大多数编程语言不一样。 完整的表达式要被 ` ` 包含,注意这个字符不是常用的单引号,在 Esc 键下边。

算术运算符

下表列出了常用的算术运算符,假定变量 a 为 10,变量 b 为 20:

运算符

说明

举例

+

加法

`expr $a + $b` 结果为 30。

-

减法

`expr $a - $b` 结果为 -10。

*

乘法

`expr $a * $b` 结果为 200。

/

除法

`expr $b / $a` 结果为 2。

%

取余

`expr $b % $a` 结果为 0。

=

赋值

a=$b 将把变量 b 的值赋给 a。

==

相等。用于比较两个数字,相同则返回 true。

[ $a == $b ] 返回 false。

!=

不相等。用于比较两个数字,不相同则返回 true。

[ $a != $b ] 返回 true。

注意:条件表达式要放在方括号之间,并且要有空格,例如: [$a$b] 是错误的,必须写成 [ $a $b ]。 算术运算符实例如下:

  1. #!/bin/bash
  2. a=10
  3. b=20
  4. val=`expr $a + $b`
  5. echo "a + b : $val"
  6. val=`expr $a - $b`
  7. echo "a - b : $val"
  8. val=`expr $a \* $b`
  9. echo "a * b : $val"
  10. val=`expr $b / $a`
  11. echo "b / a : $val"
  12. val=`expr $b % $a`
  13. echo "b % a : $val"
  14. if [ $a == $b ]
  15. then
  16. echo "a 等于 b"
  17. fi
  18. if [ $a != $b ]
  19. then
  20. echo "a 不等于 b"
  21. fi

执行脚本,输出结果如下所示:

  1. a + b : 30
  2. a - b : -10
  3. a * b : 200
  4. b / a : 2
  5. b % a : 0
  6. a 不等于 b

注意:

乘号(*)前边必须加反斜杠(\)才能实现乘法运算;

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 算术运算符
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档