目录
一、条件测试
1.1 文件测试与整数测试
1.1.1 test命令
测试表达是否成立,若成立返回0,否则返回其他数值
格式1:test 条件表达式
格式2:[ 条件表达式 ]
注意 [ ] 里前后至少一个空格
1.1.2 文件测试
[ 操作符 文件或目录 ]
常用的测试操作符
-d:测试是否为目录(directory)
-e:测试目录或文件是否存在(exist)
-f:测试是否为文件(file)
-r:测试当前用户是否有权限读取(read)
-w:测试当前用户是否有权限写入(write)
-x:测试当前用户是否有权限执行(excute)
返回0表示条件成立,返回1表示条件不成立,&&逻辑与,而且的意思
1.1.3 整数值比较
[ 整数1 操作符 整数2 ]
常用的测试操作符
-eq:等于 equal
-ne:不等于 not equal
-gl:大于 greater than
-lt:小于 lesser than
-le:小于或等于 lesser or equal
-ge: 大于或等于 greater or equal
free -m查看内存参数
1.2 字符串测试与逻辑测试
1.2.1 字符串比较
格式1:[ 字符串1 = 字符串2 ]
[ 字符串1 != 字符串2 ]
格式2:[ -z 字符串 ]
常用的测试操作符
=:字符串内容相等
!=:字符串内容不同,!表示相反的意思
-z:字符串内容为空
1.2.2 逻辑测试
格式1:[ 表达式1 ] 操作符 [ 表达式2 ] ...
格式2:命令1 操作符 命令2 ...
常用的测试操作符
-a或&&:逻辑与,而且的意思
-o或||:逻辑或,或者的意思
!:逻辑否
二、if语句
2.1 if单分支语句
if 条件测试操作
then 命令序列
fi
判断目录,若不存在则自动创建
2.2 if双分支语句
if 条件测试操作
then 命令序列1
else 命令序列2
fi
2.3 if多分支语句
if 条件测试操作1
then 命令序列1
elif 条件测试操作2
then 命令序列2
else
命令序列3
fi
三、case分支语句
case 变量值 in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
.....
*)
默认命令序列
esac
生成一个随机数是10以内的数