二维码

Shell编程之条件语句章

1385 人阅读 | 时间:2019年09月30日 14:32

Shell编程之条件语句章

 

条件测试:

1、文件测试

2、整数测试

3、字符串与逻辑测试

if语句:

1if单分支语句

2if双分支语句

3if多分支语句

4if嵌套语句

test命令:

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

格式1test 条件表达式

格式2条件表达式 ]       //注意有空格

文件测试:

格式:操作符 文件或目录 ]

常用的测试操作符:

1-d:测试是否为目录(Directory

2-e:测试目录或文件是否存在(Exist

3-f:测试是否为文件(File

4-r:测试当前用户是否有权限读取(Read

5-w:测试当前用户是否有权限写入(Write

6-x:测试当前用户是否有权限执行(eXcute

举例说明:

方法一:test -d /etc/sysconfig(测试etc目录下是否有sysconfig这个文件或者目录存在)  

              echo $?(进行条件判断,如果由此文件输出结果为0值)

方法二:-d /etc/sysconfig ]

              echo $?(进行条件判断,如果无此文件输出结果为非0值,就是1

整数值比较:

格式:整数操作符 整数2 ]

常用的测试操作符:

1-eq:等于(Equal

2-ne:不等于(Not Equal

3-gt:大于(Greater Than

4-lt:小于(Lesser Than

5-le:小于或等于(Lesser or Equal

6-ge:大于或等于(Greater or Equal

Demo1 

目的:查看目录下是否有我们需要的文件,若没有则直接创建。具体操作如下:

[root@localhost ~]#  ! test -e /etc/ssc && touch /etc/ssc(查看在etc目录有是否有ssc文件,如果没有直接在此目录下创建)

[root@localhost ~]# cd /etc(验证:进入etc目录下)

[root@localhost etc]# ls(查看详细信息,此时可以找到我们创建的sscw文件)

字符串比较:

格式1字符串1 = 字符串2 ]

            字符串1 ! = 字符串2 ]

格式2[ -z 字符串]

常用的测试i操作符:

1=:字符串内容相同

2!=:字符串内容不同,!表示相反的意思

3-z:字符串内容为空

逻辑测试:

格式1表达式1 ] 操作符 表达式2 ] ...

格式2:命令操作符 命令2 ...

常用的测试操作符:

1-a&&:逻辑与,而且的意思

2-o||:逻辑或,或者的意思

3、!:逻辑否

1、单分支结构:

Shell编程之条件语句章

2、双分支结构:

Shell编程之条件语句章

3、多分支结构:

Shell编程之条件语句章

if语句应用示例:

1.单分支if语句

2.双分支if语句:

判断目标主机是否存活,显示检测结果

Shell编程之条件语句章

3.多分支if语句:

判断分数范围,分出优秀、合格、不合格三挡

Shell编程之条件语句章

Demo2(判断成绩):

使用单分支实现:

 

vim source.sh

#!/bin/bash

read -p "请输入整数" src

if [ $src -le 50 ]

 then

    echo "数字太小"

fi

chmod +x source.sh

./source.sh

使用双分支实现:(进入创建的执行文件中进行修改)

vim source.sh

#!/bin.bash

read -p "请输入整数" src

if [ $src -le 50 ]

 then

    echo "数字太小"

 else

    echo "数字太大"

fi

使用多分支实现:(进入创建的执行文件中进行修改)

vim source.sh

#!/bin.bash

read -p "请输入整数" src

if [ $src -ge 85 ]&& [ $src -le 100 ]

 then

    echo "$src成绩优秀"

elif [ $src -ge 70 ] && [ $src -le 84]

 then

    echo $src成绩合格"

 else

    echo "成绩不合格"

fi

Demo3

实验环境:进行跑步比赛,10秒内进入决赛,输入性别后,分别提示进入男子组还是女子组,使用多重判断,嵌套if实现

具体在执行文件中输入内容如下图:

Shell编程之条件语句章

 


©著作权归作者所有:来自ZhiKuGroup博客作者没文化的原创作品,如需转载,请注明出处,否则将追究法律责任 来源:ZhiKuGroup博客,欢迎分享。

评论专区
  • 昵 称必填
  • 邮 箱选填
  • 网 址选填
◎已有 0 人评论
搜索
作者介绍
30天热门
×
×
本站会员尊享VIP特权,现在就加入我们吧!登录注册×
»
会员登录
新用户注册
×
会员注册
已有账号登录
×