内容要点

条件测试:

  • 文件测试

  • 整数测试

  • 字符串与逻辑测试

If语句:

  • If单分支语句

  • If 双分支语句

  • If多分支语句

一、条件测试:

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

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

走入shell之——条件测试及if语句(含脚本举例)_text if

1、文件测试

文件比较

[操作符 文件或目录]

常用的测试操作符L:

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

走入shell之——条件测试及if语句(含脚本举例)_text if_02

走入shell之——条件测试及if语句(含脚本举例)_text if_03

2、整数测试:

整数值比较:

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

常用的测试操作符:

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

走入shell之——条件测试及if语句(含脚本举例)_text if_04

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

走入shell之——条件测试及if语句(含脚本举例)_text if_05

走入shell之——条件测试及if语句(含脚本举例)_text if_06

使用细节:

走入shell之——条件测试及if语句(含脚本举例)_text if_07

3、字符串与逻辑测试:

字符串比较

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

常用的测试操作符:

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

走入shell之——条件测试及if语句(含脚本举例)_text if_08

走入shell之——条件测试及if语句(含脚本举例)_text if_09

逻辑测试:

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

常用的逻辑测试操作符

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

if语句:

if单分支

走入shell之——条件测试及if语句(含脚本举例)_text if_10

走入shell之——条件测试及if语句(含脚本举例)_text if_11

走入shell之——条件测试及if语句(含脚本举例)_text if_12

if双分支:

走入shell之——条件测试及if语句(含脚本举例)_text if_13走入shell之——条件测试及if语句(含脚本举例)_text if_14

走入shell之——条件测试及if语句(含脚本举例)_text if_15

走入shell之——条件测试及if语句(含脚本举例)_text if_16

if多分支:

走入shell之——条件测试及if语句(含脚本举例)_text if_13走入shell之——条件测试及if语句(含脚本举例)_text if_13走入shell之——条件测试及if语句(含脚本举例)_text if_19

走入shell之——条件测试及if语句(含脚本举例)_text if_20

走入shell之——条件测试及if语句(含脚本举例)_text if_21走入shell之——条件测试及if语句(含脚本举例)_text if_22