Shell脚本——条件语句

  

条件测试

  
  

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

     

.

  
  

如果语句:
单分支的如果语句
双分支的如果语句
多分枝的如果语句

     

.

  

1,文件测试

  
  

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

     

<>强基本格式

  
 <代码>测试条件表达式或者[条件表达式) 
  

<>强文件的常见操作选项如下:

           选项   描述               - d   测试是否为目录(目录)         - e   测试目录或文件是否存在(存在)         - f   测试是否为文件(文件)         - r   测试当前用户是否有权限读取(阅读)         - w   测试当前用户是否有权限写入(写)         - x   测试是否设置有可执行(Excute)权限            
  

执行以上操作之后,可以通过“$ ?”可以获得测试命令的返回状态值,从而判断是否成立

     

实际操作

  

<强>格式一

  
 <代码>测试- d/etc/sysconfig(测试/etc里的sysconfig目录是否存在)
  echo $ ?(返回值为0,则条件成立) 
  

<强>格式二

  
 <代码> [- d/etc/sysconfig]
  echo $(若条件不成立,测试值将不为0(通常为1)) 
  

<强>整数值比较

  
  

格式格式:[整数1操作符整数2]

     

<强>常用操作选项

  
 <代码> 1、情商:等于(平等)
  2,- ne:不等于(不等于)
  3,gt:大于(大于)
  4,lt:小于(小于)
  5,le:小于或等于(小于或等于)
  6,通用电气:大于或等于(大于或等于) 
  

<强>字符串比较

  
 <代码>格式1:[字符串1=字符串2]
  (字符串1 !=字符串2]
  格式2:[- z字符串) 
  

<强>常用操作选项

  
 <代码> 1=:第一个字符串与第二个字符串相同
  2、!=:第一个字符串与第二个字符串不相同,其或中“!”符号取反
  3,- z:检查字符串是否为空,对于未定义或赋予空值的变量将视为空串 
  

<强>逻辑测试

  
 <代码>格式1:[表达式1]操作符(表达式2]…
  格式2:命令1操作符命令2… 
  

<强>常用操作选项

  
 <代码> 1,——或,,:逻辑与,“而且”的意思
  2,- o或| |:逻辑或,“或”者的意思
  3,!逻辑否,表示“不”的意思 
  

<强>如果语句

  
  

单分支结构

     
 <代码>如果条件测试操作
  然后
  命令序列
  fi  
  
  

双分支结构

     
 <代码>如果条件测试操作
  然后
  命令序列1
  然后
  命令序列2
  fi  
  
  

多分枝结构

     
 <代码>如果条件测试操作
  然后
  命令序列1
  elif条件性测试操作2
  然后
  命令序列2
  其他的
  命令序列3
  fi  

Shell脚本——条件语句