08_Shell运算符

08_Shell运算符

一、算数运算符

expr 整数表达式

#!/bin/bash

#整数运算(expr 只能整数运算)
expr 1 + 1
expr 1 \* 2
expr 2 / 1
expr 2 - 1
expr 3 % 2

#结果接收要用 ``  反引号
result=`expr 1 + 1`
echo $result

在这里插入图片描述

二、比较运算符

2.1、整数比较运算符

运算符说明举例
-eq是否等于,等于返回0,不等返回1[ 1 -eq 1 ]
-ne是否不等,不等返回0,等于返回1[ 1 -ne 1 ]
-gt左边是否大于右边,大于返回0,小于等于返回1[ 1 -gt 1 ]
-lt左边是否小于右边,小于返回0,大于等于返回1[ 1 -lt 1 ]
-ge左边是否大于等于右边,大于等于返回0,小于返回1[ 1 -ge 1 ]
-le左边是否小于等于右边,小于等于返回0,大于返回1[ 1 -le 1 ]
==同上((1==1))
!=同上((1!=1))
>同上((1>1))
<同上((1<1))
>=同上((1>=1))
<=同上((1<=1))

在这里插入图片描述

注意:

​ 整数比较运算符只支持整数,不支持小数和字符串,返回0代表成功,返回1代表失败

2.2、字符串比较运算符

支持比较字符串和小数

运算符说明举例备注
==是否相等[[ $a == $b]]也可以使用 =不推荐,也可以使用 [] 不推荐
!=是否不等[[ $a != $b ]]也可以使用 [] 不推荐
>是否大于[[ $a > $b ]]也可以使用 [] ,需要转义符 [\>],不推荐
<是否小于[[ $a < $b ]]也可以使用 [] ,需要转义符 [\<],不推荐
-z字符串长度是否为0,为0则true[[ -z $a ]]也可以使用 [] 不推荐
-n字符串长度是否不为0,不为0则true[[ -n $a ]]也可以使用 [] 不推荐

在这里插入图片描述

[[]][] 区别

区别[[ ]][ ]
是否需要转义字符不需要需要
是否有word splitting 发生不会

在这里插入图片描述

三、布尔运算符

运算符说明举例
!取反[[ !表达式 ]]
-oor运算,有一个为true则为true[[ 表达式1 -o 表达式2 ]]
-aand运算,两个表达式都为true才为true[[ 表达式1 -a 表达式2 ]]

四、逻辑运算符

运算符说明举例
&&[[ 表达式1 && 表达式2 ]]
||[[ 表达式1 || 表达式2 ]]
![[ !表达式 ]]

注意:

&& 和 || 必须放在 [[]] 或者 (()) 中使用

! 可以用在 []和[[]] 中 ,不可以在 (())

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值