目录
算术运算符
-
expr(求值表达式)命令
expr 是 evaluate expressions 的缩写,译为“求值表达式”。
-
expr语法
- 计算语法
expr 算术运算符表达式 注意: 运算符表达式中每个数字与符号之间要有空格 只能进行整数的运算,不能进行小数的运算
- 获取计算结果赋值给新变量语法
result=`expr 算术运算符表达式` #反引号 反引号可以执行里面的命令
- 计算语法
-
算术运算符介绍
下表列出了常用的算术运算符,假定变量 a 为 1,变量 b 为 2:
运算符 说明 举例 + 加法 expr $a + $b
结果为 3- 减法 expr $a - $b
结果为 -1* 乘法 expr $a \* $b
结果为 2/ 除法 expr $b / $a
结果为 2% 取余 expr $b % $a
结果为 0= 赋值 a=$b 将把变量 b 的值赋给 a 四则运算中如果使用了(), 也需要转义
\( 1 + 1 \)
,首个\(
和数字之间需要有空格#!/bin/bash # 使用read命令读取输入两个数字 read -p "请输入第一个数字:" read -p "请输入第二个数字:" # 对两个数字进行算数运算 echo "a=${a} b=${b}" echo "a + b = `expr $a + $b`" echo "a * b = `expr $a \* $b`" echo "a - b = `expr $a - $b`" echo "a * b = `expr $a \* $b`" echo "b / a = `expr $b / $a`" echo "b % a = `expr $b % $a`" echo "b * (a + a) = `expr $b \* \( $a + $a \)`"
比较运算符
-
语法:
- 执行方式一:单词方式
[ ]
,执行过成功中,字符与字符之间,符号与符号之间是有空格的 - 执行方式二:符号
(( ))
,不需要有空格
下表列出了常用的比较运算符,假定变量 a 为 1,变量 b 为 2:
运算符 说明 举例 -eq
equals 检测两个数是否相等,相等返回 0, 否则返回1。 [ $a -eq $b ]
返回 1。-ne
not equals检测两个数是否不相等,不相等返回 true。 [ $a -ne $b ]
返回 0。-gt
greater than检测左边的数是否大于右边的,
是返回0, 否则1[ $a -gt $b ]
返回 1。-lt
lower than检测左边的数是否小于右边的,
是返回0, 否则1[ $a -lt $b ]
返回 0。-ge
greater equals检测左边的数是否大于等于右边的,
是返回0, 否则1[ $a -ge $b ]
返回 1。-le
lower equals检测左边的数是否小于等于右边的,
是返回0, 否则1[ $a -le $b ]
返回 0。<
检测左边的数是否小于右边的,
是返回0, 否则1(($a<$b))
返回0<=
检测左边的数是否小于等于右边的,
是返回0, 否则1(($a<=$b))
返回0>
检测左边的数是否大于右边的,
是返回0, 否则1(($a>$b))
返回1>=
检测左边的数是否大于等于右边的,
是返回0, 否则1(($a>=$b))
返回1==
检测左边的数是否等于右边的,
是返回0, 否则1(($a==$b))
返回1!=
检测左边的数是否不等于右边的,
是返回0, 否则1(($a!=$b))
返回0 - 执行方式一:单词方式