Shell编程——条件判断(2)
admin
2023-03-06 07:22:38
0

Shell编程之条件判断

条件测试操作

test命令

测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值
格式1:test 条件表达式
格式2:[ 条件表达式 ]

文件测试
[ 操作符 文件或目录 ]
常用的测试操作符
-d:测试是否为目录
-e:测试目录或文件是否存在
-f:测试是否为文件
-r:测试当前用户是否有权限读取
-w:测试当前用户是否有权限写入
-x:测试当前用户是否有权限执行
Shell编程——条件判断(2)
整数值比较
[ 整数1 操作符 整数2 ]
常用的测试操作符
-eq:等于
-ne:不等于
-gt:大于
-lt:小于
-le:小于或等于
-ge:大于或等于
Shell编程——条件判断(2)
字符串比较
格式1:[ 字符串1 = 字符串2 ]
[ 字符串1 != 字符串2 ]
格式2:[ -z 字符串 ]
Shell编程——条件判断(2)
逻辑测试
格式1:[ 表达式1 ] 操作符 [ 表达式2 ]...
格式2:命令1 操作符 命令2 ...
常用的测试操作符
-a或&&:逻辑与,”而且”的意思
-o或||:逻辑或,”或者”的意思
!:逻辑否
Shell编程——条件判断(2)

If语句的结构

单分支结构

if                          //条件测试操作
    then                  //命令序列
fi                        //结束命令序列判断

Shell编程——条件判断(2)

脚本实例:
#!/bin/bash
#比较输入的整数大不大
read -p "请输入一个整数:" num
if [ $num -ge 5 ]
 then
        echo "这个数大"
fi

Shell编程——条件判断(2)

双分支结构

if                               //条件测试操作
    then                      //命令序列1
    else                    //命令序列2
fi                         //结束命令序列判断

Shell编程——条件判断(2)

脚本实例:
#!/bin/bash
#比较输入的整数大不大
read -p "请输入一个整数:" num
if [ $num -ge 5 ]
 then
        echo "这个数大"
 else
        echo "这个数小"
fi

Shell编程——条件判断(2)

多分支结构

if                             //条件测试操作1
    then                      //命令序列1
elif                          //条件测试操作2
    then                     //命令序列2else            
                               //命令序列3
fi                            //结束命令序列判断

Shell编程——条件判断(2)

#!/bin/bash
read -p "请输入你的成绩:" num
if [ $num -gt 85 ] && [ $num -le 100 ]
 then
        echo "优秀"
elif [ $num -gt 60 ] && [ $num -le 85 ]
 then
        echo "良好"
 else
        echo "不及格"
fi

Shell编程——条件判断(2)

嵌套if语句

#!/bin/bash
read -p "请输入你的比赛时间:" num
if [ $num -lt 10 ]
 then
        echo "恭喜你进入决赛"
 read -p "您的性别是:" sex
 if [ $sex = "男" ]
  then
        echo "您进入男子组"
 else
        echo "您进入女子组"
 fi
else
        echo "抱歉你无缘决赛"
fi

Shell编程——条件判断(2)

谢谢阅读!!!

相关内容

热门资讯

51.79亿,携程真的疼了吗? 2026年7月25日,市场监管总局对携程反垄断案作出行政处罚:罚没款合计51.79亿元。但这个数字被...
一艘越南籍渔船在南沙遇险,29... 新华社三沙7月25日电(记者赵颖全)记者从三沙海上搜救中心获悉,25日傍晚,一艘越南籍渔船在南沙永暑...
成都如何耕好新型工业化“试验田... 7月24日,APEC数字周城市侧配套活动——制造强国建设专家研讨暨新型工业化推进交流会举行,院士专家...
活力中国调研行丨检测设备“长腿... 从排放控制的细分龙头到智能装备的新入局者,凯龙高科的转型路径,为观察传统制造业如何切入新赛道提供了一...
原创 别... 别被顶级奖项光环忽悠透了!拿菲尔兹奖的王虹,道出基础科研最现实的人间落差 开篇:大众脑补的名利双收,...
温州划龙桥惠耳——如何应对老年... 年近古稀的老人,近来时常出现耳鸣。周日,孩子们来了,跟她说话,声音小了她听不清,声音大了她嫌吵得慌,...
民调:包括共和党人在内,美国人... 据美国有线电视新闻网(CNN)当地时间24日报道,多项最新民调结果显示,包括许多共和党人在内,美国民...
一个人害得全县买不了榴莲,恶意... 作者:何涛 责编:任绍敏据央视报道,近日,湖南衡山县人民法院审结一起案件:当地一男子用AI伪造榴莲、...
“红霞”已加强为强台风,中央气... 今年第12号台风“红霞”已于今天晚上10时由台风级加强为强台风级,中央气象台发布今年首个台风红色预警...
携程为何被处51.79亿元重罚... 今天(25日),市场监管总局依法对携程集团有限公司滥用市场支配地位实施垄断行为作出行政处罚,罚没款合...