if语句 条件测试 shell编程之条件语句

Posted wl.88888888

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了if语句 条件测试 shell编程之条件语句相关的知识,希望对你有一定的参考价值。

一.条件测试

Shell 环境根据命令执行后的返回状态值($?) 来判断是否执行成功
当返回值为0 (真true)时表示成功,返回值为非0 值(假false) 时表示失败或异常,test命令,可以对特定条件进行测试,并根据返回值来判断条件是否成立($?返回值为0表示条件成立)

① test命令 测试

测试表达式是否成立,若成立返回0,否则返回其他数值

格式1:test 条件表达式

格式2:【 条件表达式 】   #至少有一个空格

在这里插入图片描述

注:返回0表示成立,非0值表示条件不成立

② 文件测试

[ 操作符 文件或目录 ]

常用的测试操作符
• -d: 测试是否为目录(Directory)
• -e: 测试目录或文件是否存在(Exist)
• -f: 测试是否为文件(File)
• -r: 测试当前用户是否有权限读取(Read)
• -W: 测试当前用户是否有权限写入(Write)
• -X: 测试当前用户是否有权限执行(eXcute)
• -L: 测试是否为符号链接
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

③ 整数值比较

【 整数1 操作符 整数2 】

常用的测试操作符

• -eq: 等于(Equal)
• -ne: 不等于(Not Equal)
• -gt: 大于(Greater Than)
• -lt: 小于(Lesser Than)
• -le: 小于或等于(Lesser or Equal)
• -ge: 大于或等于(Greater or Equal)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

④ 字符串比较

格式1
【 字符串1 = 字符串2 】
【 字符串1 != 字符串2 】

格式2
【 -z 字符串 】 #是否空值
【 -n 字符串 】 # 字符集是否存在

常用的测试操作符

• =: 字符串内容相同
• !=: 字符串内容不同,! 号表示相反的意思
• -z: 字符串内容为空

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⑤ 逻辑测试

格式1:【 表达式 1 】操作符 【 表达式2 】...
格式2:命令1 操作符 命令2 ...

常用的测试操作符

• -a或&&: 逻辑与,‘‘而且’ 的意思.
• -o或||: 逻辑或,“或者” 的意思
• !: 逻辑否

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
• &&、|| 操作符能够正常存在于[[ ]]条件判断结构中,但是如果出现在[ ]结构中的话,会报错

• || 操作符 如果前面的表达式条件成立,不会去管,不成立就会输出

vim ping.sh
在这里插入图片描述
在这里插入图片描述

二.if语句的结构

单分支结构

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
:
在这里插入图片描述
在这里插入图片描述

双分支结构

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

多分支结构

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

三.case语句结构

case多分支结构

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

总结

• 条件测试的语法
文件测试、整数值比较、字符串比较、逻辑测试

• if条件语句的语法
单分支、双分支、多分支

• case多分支语句的语法

以上是关于if语句 条件测试 shell编程之条件语句的主要内容,如果未能解决你的问题,请参考以下文章

Shell编程之条件语句

Shell编程之条件语句章

理论 : shell编程之条件语句————理论讲解

shell编程之条件语句——if与case

Shell脚本之——条件语句if详解

Shell编程之条件语句