码迷,mamicode.com
首页 > 系统相关 > 详细

shell脚本编程学习笔记-整数二次元比较操作符

时间:2018-03-08 17:30:09      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:linux   shell   

1.1 下表为常用二次元比较操作符

技术分享图片

我们也可以通过man test查看

技术分享图片

提示

(1) “<”符号是小于的意思,if[[ “$a”<”$b” ]], if[[ “$a”\<”$b” ]]。在单括号中需要转义,因为在shell也用<和>做重定向。

(2) “>”符号是大于的意思,if[[ “$a”> “$b” ]], if[[ “$a” \> “$b” ]]。在单括号中需要转义,因为在shell也用<和>重定向。

(3) “=”符号第等于的意思,if[[ “$a”=”$b” ]],if[[ “$a”=”$b”]]。在单[]中不需要转义。

特别提示:

“=”和”!=”在[]中使用不需要转义,包含”>”和”<”的符号在[]号中使用需要转义,对于数字不转义的结果未必会报错,但是结果可能不会对。

范例1:二次数字比较

技术分享图片

技术分享图片

实际测试结果结论:

(1)整数加双引号也是对的。

(2)[[ ]]用-eq等的写法也是对的,[[ ]]用>写法也可能不对,只比较第一位,逻辑结果不对。

技术分享图片

(3)[ ]用>号的写法语法报错,逻辑结果不对。

工作场景:推荐[ ]的-eq的用法。

小结:整数比较推荐用法

[ $num –eq $num2 ] 注意空格,和比较符号。

(($num1>$num2)) 无需空格,常规数学比较符号。

技术分享图片

整数比较可以加双引号也可以不加。
系统脚本例子grep –w “-eq”/etc/init.d/nfs

技术分享图片

shell脚本编程学习笔记-整数二次元比较操作符

标签:linux   shell   

原文地址:http://blog.51cto.com/10642812/2084230

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!