shell脚本(if和case)

目录

一、条件测试

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的多分支语法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值