shell if的条件语句的语法

        if判断是编程中的一种控制结构,用于根据条件的真假来执行不同的代码块。它的作用是根据条件判断来决定程序的执行路径。

        当if条件为真时,会执行后续的代码块。如果条件为假,则可以选择执行else语句中的代码块,或者不执行任何操作。

        if判断可以根据不同的条件执行不同的代码块,从而实现程序的分支控制。它在程序中起到了决策的作用,可以根据不同的条件执行不同的逻辑。

在Shell编程中,if判断常常用于检测命令的执行结果、变量的值或者表达式的真假。它的语法如下:

if [条件] ; then
    执行语句
else
    执行语句
fi

整数值的比较 

操作符:

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

 例:编写一个能够监视/boot目录的剩余空间百分比的脚本,丙炔当空闲率达到百分之80能够发出报警提示

# /bin/bash

i=$( df -h /boot | awk '/\// { print int($5) }' )
f=$[100-$i]
if [ $f -le 80 ]
then
        echo "/boot目录的空闲率不足百分之80,当前空闲率为$f %"
fi

逻辑测试(与、或、非)
  • -a或&& :与,全部为真才为真

        与运算(&&):在使用 && 运算符时,左边的条件为真(返回 0),则执行右边的操作;如果左边的条件为假(非 0),则右边的操作将不会执行。

  • -o或|| : 或,  一个为真即是真

        或运算(||):在使用 || 运算符时,左边的条件为真(返回 0),则右边的操作将不会执行;如果左边的条件为假(非 0),则执行右边的操作。

  • !: 否

        非运算(!):在使用 ! 运算符时,将对条件进行取反操作。如果条件为真(返回 0),取反后为假(非 0);如果条件为假(非 0),取反后为真(返回 0)。

格式:

[ 表达式1 ] && [ 表达式2 ] 等同于 [ 表达式1 -a 表达式2 ] [[ 表达式1 && 表达式2 ]]

[ 表达式1 ] || [ 表达式2 ] 等同于 [ 表达式1 -o 表达式2 ] [[ 表达式1 || 表达式2 ]]

例:

# /bin/bash

if  [ 1 -lt 2 ] || [ 1 -gt 3  ] ; then
        echo "true"
else
        echo "false"
fi

字符串比较
=字符串内容相同
!=字符串内容不同,! 号表示相反的意思
-z字符串内容为空
-n字符是否存在

多重if结构

        多重if结构是一种嵌套的条件语句,用于根据不同的条件执行不同的代码块。多重if结构由多个if语句组成,每个if语句都有一个条件表达式和一段需要执行的代码块。

if [判断条件] ; then

        条件成立的分支代码

elif [ 判断条件] ; then

        条件成立后的代码1

elif [ 判断条件] ; then

        条件成立后的代码2

...

else

        条件不成立的分支代码

fi

运行演示:

#!/bin/bash

read -p "请输入你本次的成绩:" score

if [ $score -eq 100 ] ; then
        echo "优秀!"
elif [ $score -le 99 ] && [ $score -ge 80 ] ; then
        echo "良好!"
elif [ $score -le 79 ] && [ $score -ge 60 ] ; then
        echo "及格!"
elif [ $score -le 59 ] && [ $score -ge 0 ] ; then
        echo "继续努力!"
else
        echo "输入有误!请输出0-100的分数值!"
fi

如有错误给孩子提醒一下,感谢观看!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值