壳编程之条件判断
条件测试操作
测试命令
测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值
<代码>格式1:测试条件表达式 格式2:[条件表达式)代码>
<>强文件测试强>
[操作符文件或目录]
常用的测试操作符
- d:测试是否为目录
- e:测试目录或文件是否存在
- f:测试是否为文件
- r:测试当前用户是否有权限读取
- w:测试当前用户是否有权限写入
- x:测试当前用户是否有权限执行
<强>整数值比较强>
[整数1操作符整数2]
常用的测试操作符
情商:等于
- ne:不等于
gt:大于
lt:小于
le:小于或等于
通用电气:大于或等于
<强>字符串比较强>
格式1:[字符串1=字符串2]
[字符串1 !=字符串2]
格式2:[- z字符串]
<强>逻辑测试强>
格式1:[表达式1]操作符(表达式2]…
格式2:命令1操作符命令2…
常用的测试操作符
——或,,:逻辑与,“而且”的意思
- o或| |:逻辑或,“或”者的意思
!:逻辑否
如果语句的结构
单分支结构
<代码>如果//条件测试操作//命令序列 fi//结束命令序列判断代码>
<代码>脚本实例: # !/bin/bash #比较输入的整数大不大 阅读- p“请输入一个整数:“num 如果(num通用电气5美元) 然后 回声”这个数大” fi 代码>
双分支结构
<代码>如果//条件测试操作//命令序列1 其他//命令序列2 fi//结束命令序列判断代码>
<代码>脚本实例: # !/bin/bash #比较输入的整数大不大 阅读- p“请输入一个整数:“num 如果(num通用电气5美元) 然后 回声”这个数大” 其他的 回声”这个数小” fi 代码>
多分支结构
<代码>如果//条件测试操作1//命令序列1 elif//条件测试操作2//命令序列2//命令序列3 fi//结束命令序列判断代码>
<代码> # !/bin/bash 阅读- p“请输入你的成绩:“num 如果(num gt 85美元),,(num勒100美元) 然后 回声“优秀” elif (num gt 60美元),,(num勒85美元) 然后 回声“良好” 其他的 回声”不及格” fi 代码>
嵌套如果语句
<代码> # !/bin/bash 阅读- p“请输入你的比赛时间:“num 如果(num lt 10美元) 然后 回声“恭喜你进入决赛” 读- p”您的性别是:“性 如果($性="男") 然后 回声”您进入男子组” 其他的 回声”您进入女子组” fi 其他的 回声”抱歉你无缘决赛” fi 代码>