内容要点

条件测试:

  • 文件测试

  • 整数测试

  • 字符串与逻辑测试

If语句:

  • If单分支语句

  • If 双分支语句

  • If多分支语句

一、条件测试:

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

格式一:test 条件表达式
格式二:[条件表达式]

image.png

1、文件测试

文件比较

[操作符 文件或目录]

常用的测试操作符L:

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

走入shell之——条件测试及if语句_第1张图片

走入shell之——条件测试及if语句_第2张图片

2、整数测试:

整数值比较:

方法一: [整数1操作符整数2]
方法二: [$ (整数1)操作符整数2] 
方法三: [整数1操作符整数2]

常用的测试操作符:

-eq:等于
-ne:不等于
-It: 小于
-gt:大于
-le:小于或等于
-ge:大于或等于

走入shell之——条件测试及if语句_第3张图片

测试文件是否存在,若不存在则创建

image.png

走入shell之——条件测试及if语句_第4张图片

使用细节:

走入shell之——条件测试及if语句_第5张图片

3、字符串与逻辑测试:

字符串比较

格式1:[ 字符串1 = 字符串2 ]
       [ 字符串1 != 字符串2 ]
格式2:[-z 字符串 ]

常用的测试操作符:

=:字符串内容相同
! =:字符串内容不同
-z:字符串内容为空

走入shell之——条件测试及if语句_第6张图片

image.png

逻辑测试:

格式1:[ 表达式1 ] 操作符 [ 表达式2 ] ...
格式2:命令1 操作符 命令2 ....

常用的逻辑测试操作符

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

if语句:

if单分支

走入shell之——条件测试及if语句_第7张图片

走入shell之——条件测试及if语句_第8张图片

走入shell之——条件测试及if语句_第9张图片

if双分支:

spacer.gif走入shell之——条件测试及if语句_第10张图片

走入shell之——条件测试及if语句_第11张图片

走入shell之——条件测试及if语句_第12张图片

if多分支:

spacer.gifspacer.gif走入shell之——条件测试及if语句_第13张图片

走入shell之——条件测试及if语句_第14张图片

走入shell之——条件测试及if语句_第15张图片走入shell之——条件测试及if语句_第16张图片