ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第五节

2022-01-23 13:33:08  阅读:138  来源: 互联网

标签:满足条件 是否 echo 第五节 测试 fi DATA


 

Shell脚本

条件测试语句

格式:[  条件表达式  ]         //两边有空格

文件测试常用参数:

-d 测试文件是否为目录
-e 测试文件是否存在
-f 判断是否为一般文件
-r 测试当前用户是否有读权限
-w 测试当前用户是否有写权限
-x 测试当前用户是否有执行权限

文件测试是使用指定条件来判断文件或目录是否存在、权限是否满足等情况。

常用的整数比较运算符

-eq 是否等于
-ne 是否不等于
-gt 是否大于
-lt 是否小于
-le 是否小于或等于
-ge 是否大于或等于

整数比较运算符仅仅是对数字进行操作。

常见的字符串比较运算符:

= 比较字符串内容是否相同
!= 比较字符串内容是否不同
-z 判断字符串是否为空

字符串比较语句用于判断测试字符串是否为空,或两个字符串是否相同。

流程控制语句

if条件测试语句:

if语句分为单分支结构、双分支结构、多分支结构

单分支结构:

if    条件                           //条件判断

    then   命令序列           //满足条件执行then

fi                                     //不满足条件,结束退出

[root@linuxprobe ~]# vim mkcdrom.sh
#!/bin/bash             //脚本声明
DIR="/media/cdrom"      //定义变量
if [ ! -d $DIR ]        //判断目录是否存在
then    
        mkdir -p $DIR   //不存在则创建
fi

双分支结构:

if    条件                           

    then   命令序列1          //满足条件执行then

    else   命令序列2          //不满足执行else

fi                                     //结束退出

[root@superwu10 shell.test]# vim checkhost.sh
#!/bin/bash
IP=192.168.10.30
ping -c 3 $IP &> /dev/null
if [ $? -eq 0 ]
then
    echo "$IP is online"
else
    echo "$IP is offline"
fi

多分支结构:

if    条件1                         

    then   命令序列1          //满足条件1执行t

elif  条件2

    then   命令序列2          //满足条件2执行

elif  条件3

    then   命令序列3         //满足条件3执行

else  

      命令序列4                //以上条件都不满足执行

fi                                     //结束退出

[root@superwu10 shell.test]# cat checkchengji2.sh
#!/bin/bash
read -p "Enter your chengji (0-100)" DATA
if [ $DATA -ge 90 ] && [ $DATA -le 100 ]
then echo "$DATA is youxiu"
elif [ $DATA -lt 90 ] && [ $DATA -ge 70 ]
then echo "$DATA is lianghao"
elif [ $DATA -lt 70 ] && [ $DATA -ge 60]
then echo "$DATA is pass"
elif [ $DATA -lt 60 ] && [ $DATA -ge 0 ]
then echo "$DATA is not pass"
else echo "You enter is Error,please enter 0-100"
fi

 

标签:满足条件,是否,echo,第五节,测试,fi,DATA
来源: https://www.cnblogs.com/wushuai2018/p/15836213.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有