条件测试操作
Shell环境根据命令执行后的返回状态值($?)来判断是否执行成功,当返回值为0(真true)时表示成功,返回值为非0值(假false)时表示失败或异常。
test 命令,可以对特定条件进行测试,并根据返回值来判断条件是否成立($?返回值为0表示条件成立)
格式一: test 条件表达式
格式二:[条件表达式] #方括号"["或"]"与条件表达式之间需要至少一个空格进行分隔
文件测试
格式:[操作符 文件或目录]
常用的操作符:
-e:测试目录或文件是否存在(Exist)
-d:测试是否为目录( Directory)
-f:测试是否为文件(File)
-r:测试当前用户是否有权限读取(Read)
-w:测试当前用户是否有权限写入(write)
-x:测试是否设置有可执行(Excute)权限
-L:测试是否为符号链接
整数值比较
格式:[整数变量1 操作符 整数变量2]
常用的操作符:
-eq:等于 ==
-ne:不等于 !=
-gt:大于 >
-ge:大于等于
-lt:小于 <
-le:小于等于
字符串比较
[ 字符串1 = 字符串2 ] 判断是否相等
[ 字符串1 != 字符串2 ] 判断是否不相等
[-z 字符串] 字符串内容为空
逻辑测试
格式1∶ [ 表达式1 ] 操作符 [ 表达式2 ]…
格式2∶ 命令1 操作符 命令2…
常用的测试操作符
-a或&&∶ 逻辑与,"而且"的意思
-o或||∶ 逻辑或,"或者"的意思
!∶逻辑否
三元运算符
[ 条件表达式 ] && 值1 || 值2 (注意空格格式)
编写ping脚本
if语句
单分支结构
实例:
硬盘挂载的分隔
监视磁盘空间脚本文件
双分支结构
80端口是否监听
case语句结构
实验