当前位置:   article > 正文

shell脚本(if和case)_shell case if

shell case if

目录

一、条件测试

1.1 文件测试

1.1.1 test 命令

1.1.2 [ ] 测试

 ​1.2 数值比较

二、if语句

2.1 单分支语句

2.2 双分支语句

2.3 多分支语句

 2.4 if 嵌套语句

三、 case 分支语句

总结


一、条件测试

1.1 文件测试

shell脚本是一个智能的过程,shell会根据命令执行返回一个状态来表示命令是否执行成功($?)

当返回结果为0时表示成功,否则则失败。

1.1.1 test 命令

格式:test 【操作符】 【条件】

常用操作符:

-d 测试是否为目录

-e 测试目录或文件是否存在

-f 测试是否为文件

-r 测试当前用户是否有读取的权限

-w 测试当前用户是否有写入的权限

-x 测试当前用户是否有执行的权限

-L 测试文件是否为软连接文件

-b 测试是否为设备文件

-c 测试是否为字符设备

-s 测试文件内是否为空

①test 命令测试

1.1.2 [ ] 测试

 1.2 数值比较

根据两个整数值,判断第一个数和第二个数的关系。

格式:【整数1 操作符 整数2】

常用操作符:

-eq    等于==

-ne   不等于!=

-lt     小于<

-gt    大于>

-le     小于等于<=

-ge   大于等于>=

二、if语句

2.1 单分支语句

单分支语句只有在条件成立的情况下会执行相应的代码

格式:

if  条件测试操作

then 命令序列

fi

案例一:

 

案例二:

 

2.2 双分支语句

双分支语句,针对条件成立或者不成立 并分别执行不同的操作

格式:

if  条件测试操作

then

命令1(条件成立时的命令)

else

命令2(条件不成立时的命令)

fi 

案例一:

案例二:

案例三:
 

 

2.3 多分支语句

格式:

if [ 条件判断式 ]; then

    当条件判断成立时,执行命令1

elif [ 条件判断式二 ]; then

    当条件判断成立时,执行命令2

else    

    当上面的条件判断都不成立时,执行命令3
fi      

  
案例一:

 

 2.4 if 嵌套语句

 案例二:

 

三、 case 分支语句

case 语句主要适用于以下情况:某个变量存在多种取值,需要对其中的每一 种取值分别执行不同的命令序列。这种情况与多分支的if语句非常相似,只不过if语句需要判断多个不同的条件,而case 语句只是判断一个变量的不同取值。

格式:

case 变量值  in

模式1)

命令1

;;

模式2)

命令2

;;

easc

案例一:

 

案例二:

总结

1.条件测试语法:

test 和 [] 

文件测试常用的字符:-d   -e  -f   -r    -w   -x  -b  -s

数值比较:-eq    -ge    -le    -ne    -gt     -lt

2. if条件语法:单分支、双分支、多分支

3.case的多分支语法

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号