if条件判断语句,通常以if开头,fi结尾。也可加入else或者elif进行多条件的判断,if表达式如下:
if(表达式)
语句1
else
语句2
fi
if常见的判断逻辑运算符:
• -f:判断文件是否存在,例如if[-f filename]
• -d:判断目录是否存在,例如if[-d dir]
• -eq:等于,应用于整型比较,即equal
• -ne:不等于,应用于整型比较,即not equal
• -lt:小于,应用于整型比较,即letter
• -gt:大于,应用于整型比较,即greater
• -le:小于或等于,应用于整型比较
• -ge:大于或等于,应用于整型比较
• -a:双方都成立(and),用法为逻辑表达式-a逻辑表达式
• -o:单方成立(or),用法为逻辑表达式-o逻辑表达式
• -z:空字符串
• ||:单方成立
• &&:双方都成立表达式
If 语句括号的使用总结
1、如果是用> 、< 、 <= 、>= 比较数值的大小的话用(( ))
2、如果单独使用 -d -f -lt -gt -lt -ge -le -ne -f 用[] [[ ]]都可以
3、如果配合-a -o 使用要使用[]
if判断括号区别
• ():用于多个命令组、命令替换、初始化数组
• (()):整数扩展、运算符、重定义变量值,算术运算比较
• []:bash内部命令,“[”与test是等同的,正则字符范围、引用数组元素编号,不支持“+”、“-”、“∗”、“/”数学运算符,逻辑测试使用-a、-o
• [[]]:bash程序语言的关键字,不是一个命令,[[]]结构比[]结构更加通用,不支持“+”、“-”、“∗”、“/”数学运算符,逻辑测试使用&&、‖
• {}:主要用于命令集合或者范围,例如mkdir-p/data/201{7,8}/