shell编程之条件语句

72 阅读1分钟

条件测试操作

概念

可以对特定条件进行测试,并根据返回值来判断条件是否成立(返回值为0表示条件成立)**

test命令格式
  • test 条件表达式

  • [ 条件表达式 ]

注意: 括号与表达式之间需要空格进行隔开

文件测试

常用的操作符

  • -c:测试目录或文件是否存在(Exist)
  • -d:测试是否为目录(Direclory)
  • -f:测试是否为文件(File)
  • -r:测试当前用户是否有权限读取(Read)
  • -w:测试是否设置有可执行权限
  • -L:测试是否为符号链接

微信截图_20220830192048.png

数值比较

常用的操作符
  • -eq(=):等于
  • -ne(!=):不等于
  • -qt(>):大于
  • -lt(<):小于
  • -le(<=):小于等于
  • -ge(>=):大于等于

微信截图_20220830195548.png

微信截图_20220830195929.png

字符串测试

格式:

方法一:

  • [ 字符串1 = 字符串2 ]
  • [ 字符串1 != 字符串2 ]

方法二:

  • [ -z “字符串” ]:检查字符串是否为空
  • [ -n “字符串” ]:检查是否有字符串存在

微信截图_20220830202727.png

微信截图_20220830203033.png

逻辑测试

格式:

方式一: [ 表达式1 ] 操作符 [ 表达式2 ]

方式二: 命令1 操作符 命令2

常用的测试操作符

  • -a或&&(逻辑与,而且的意思)
  • -o或||(逻辑或,或者的意思)
  • !(逻辑否)

微信截图_20220831112738.png

微信截图_20220831112957.png