linux运维之Bash自动化-04条件判断与逻辑运算

条件判断与逻辑运算

1.前言

虽然Bash条件判断的方法有很多,而逻辑运算的用法又稍微有所不同,但是用法大同小异,会用一种,能看懂别的用法就是成功,没必要所有的用法都掌握。所谓贪多嚼不烂,这里只会讲本人经过比较后,总结的一套方法,当然读者可以根据自己的喜欢和习惯部分替换或者全部替换。

2.优势

(1) 记住的东西比较少,不用记住所有,让学习的人更容易上手;
(2) 虽然记的东西比较少,但是根据本人的工作经验来看,足以应付所有情况;
(3) 让读者比较舒服,也省去了自己总结的时间和精力;
(4) 写脚本不用纠结用什么套路去写,因为就一套,没有分支!!!

3.方法

接下来直接讲方法,都是精华:
3.1 双中括号,永远滴神,统统用 ‘[[’ 和 ‘]]’ ,也就是用双中括号

# 比较数字大小,比较数字大小只要记住:
# 大于: -gt 
# 小于: -lt
# 等于: -eq
# 大于等于、小于等于: -ge、-le
if [[ 10 -ge 9 ]];then
	echo "10 >= 9"
else
	echo "10 < 9"	
fi
# 字符串或小数比较比较:
# 大于: >
# 小于: <
# 等于: =
# 小于等于: <=
# 大于等于: >=
if [[ "How are you" > "How much" ]];then
	echo "How are you > How much"
else
	echo "How are you > How much"
fi
if [[ 1.2 > 1.1 ]];then
	echo "1.2 > 1.1"
else
	echo "1.2 <= 1.1"
fi
# 存在性判断
# -f : 文件存在性
# -d : 目录存在性
# -L : 符号链接是否存在
# -b : 块设备是否存在
# -e : 是否存在,无论是什么
# 等等
# ! :  前面加!,表示相反
if [[ ! -f "/root/test" ]];then	
	echo "不存在/root/test"
	touch /root/test
	if [[ -f "/root/test" ]];then
		echo "存在/root/test"	
	fi
fi
# 字符串为空
str=""
[[ -z ${str} ]] && echo "str 为空."
[[ ! -n ${str} ]] && echo "str 为空."
# 字符串非空
str="hello"
[[ -n ${str} ]] && echo "str 非空." || echo "str 为空"
[[ ! -z ${str} ]] && echo "str 非空." || echo "str 为空"

# 组合判断
# 或: ||
# 与: &&
# 非: !
value=10
if [[ ${value} > 9 && ${value} > 3 ]];then
	echo "${value} > 9 && ${value} > 3"
fi

4.结尾

不用去学别的方式判断,因为就我写这么多脚本来看,这些方法完全可以做到所有事情!
test判断,单括号判断都只需要能看懂,也很好看懂的。
你以为双括号永远的神就只有这些? 错了,循环我们也用双括号。

下一节:linux运维之Bash自动化-05循环

5. 题外话

工作繁忙,更新可能比较慢,但是一定会坚持的!

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前面有光

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值