if结构语句
if 表达式;then
语句
elif 表达式;then
语句
else
语句
fi
1、比较两个整数大小:
NUM=100
if (($NUM>10));then
echo "$NUM>10"
fi
2、[ ]表达式([]两边需要有一个空格,等同test命令)
NUM=100
if [ $NUM -gt 10 ];then #if test $NUM -gt 10 ;then
echo "$NUM>10"
fi
常见判断逻辑运算符:
-gt:大于,应用于整型比较
-lt:小于
-eq:等于
-ne:不等于
-f:判断文件是否存在如 if [ -f filename ]
-d:判断目录是否存在
-e:文件或目录是否存在
-a:逻辑与
-o:逻辑或
-z:字符串长度为零
-n:字符串长度不为零
!:取反
||:单个表达式成立则为真
&&:多个表示式都为真则为真
>、<、=、!=:字符比较,如[ '100' \> '20' ]&&echo 'yes'||echo 'no' #no
3、if判断括号区别:
():初始化数组、用于多个命令组、命令替换
(()):算术运算比较,整数扩展、运算符、重定义变量值
[ ]:bash内部命令,与test等同,内部逻辑测试使用-a -o
[[ ]]bash语言关键字,比[ ] 结构更加通用
{}:主要用于命令集合或者范围:mkdir /2020{1,2}