Shell脚本之条件语句

  

条件测试

  
  

1,文件测试
2,整数测试
3,字符串与逻辑测试

     

<强>如果语句:

  
  

如果单分支语句
如果双分支语句
如果多分支语句
如果嵌套语句

     

<强>测试命令:
测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值。

  
  

格式1:测试条件表达式
格式2:[条件表达式]//注意有空格

     

<>强文件测试

  
  

文件测试是指的是根据给定的路径名称,判断对应的是文件还是目录,或者判断文件是否可读,可写,可执行等。

     

<强>常用的测试操作符:

  
  

- d:测试是否为目录(目录)
- e:测试目录或文件是否存在(存在)
- f:测试是否为文件(文件)
- r:测试当前用户是否有权限读取(读)
- w:测试当前用户是否有权限写入(写)
- x:测试当前用户是否有权限执行(eXcute)

     

<>强实际操作:
格式一:

  
  

测试- d/etc/sysconfig(测试/etc里的sysconfig目录是否存在)
echo $ ?(输出值为0,则条件成立)
翱桥平疟局跫锞?

     

格式二:

  
  

[- d/etc/sysconfig]
echo $ ?(输出值为1,则条件不成立)
翱桥平疟局跫锞?

     

<强>整数值比较:
格式:[整数1操作符整数2]
<强>常用的测试操作符:

  
  

情商:等于(平等)
- ne:不等于(不等于)
gt:大于
(大于)lt:小于(小于)
le:小于或等于(小于或等于)
通用电气:大于或等于(大于或等于)

     

<强>字符串比较

  
  

格式1:[字符串1=字符串2]
[字符串1 !=字符串2]
格式2:[- z字符串]
<强>常用的测试我操作符:
=:字符串内容相同
!=:字符串内容不同,!表示相反的意思
- z:字符串内容为空

     

<强>逻辑测试

  
  

格式1:[表达式1]操作符(表达式2]…
格式2:命令1操作符命令2…
<强>常用操作选项
——或,,:逻辑与,“而且”的意思
- o或| |:逻辑或,“或”者的意思
!:逻辑否,表示“不”的意思

     

如果语句:

  

<强>单分支结构:

  
  

如果条件测试操作
,
命令序列
fi
翱桥平疟局跫锞洹? 翱桥平疟局跫锞?

     

<强>双分支结构:

  
  

如果条件测试操作
,
命令序列其他1

命令序列2
fi
翱桥平疟局跫锞洹? 翱桥平疟局跫锞?

     

<强>多分支结构:

  
  

如果条件测试操作
,
命令序列1
elif条件性测试操作2

命令序列其他2

命令序列3
fi
翱桥平疟局跫锞洹? 翱桥平疟局跫锞?

     

如果嵌套语句:

  

实验目的:进行跑步比赛,10秒内进入决赛,输入性别后,分别提示进入男子组还是女子组,使用多重判断,嵌套如果实现
翱桥平疟局跫锞洹? 翱桥平疟局跫锞?

Shell脚本之条件语句