zl程序教程

您现在的位置是:首页 >  IT要闻

当前栏目

Shell学习(四):流程控制

2023-03-14 22:44:20 时间

一、if判断



1.基本语法


  if 条件判断式 ];then

程序

fi

或者

if [ 条件判断式 ]

then

程序

fi


注意事项:

(1)[ 条件判断式 ],中括号和条件判断式之间必须有空格

(2)if后要有空格


2.实例


#!/bin/bashv
#判断分数是否及格,60分及以上及格,60分以下不及格
if [ $1 -ge 60 ]
then
        echo "及格"
elif [ $1 -lt 60 ]
then
        echo "不及格"
fi


0507f82ba38b4797be00d5229e045a52.png


二、case语句



基本语法


        case $变量名 in

          "值1")

            如果变量的值等于值1,则执行程序1

 ;;


         "值2")


           如果变量的值等于值2,则执行程序2


           ;;


         …省略其他分支…


         *)


           如果变量的值都不是以上的值,则执行此程序


           ;;


       esac


 注意事项:

        1.case行尾必须为单词“in”,每一个模式匹配必须以右括号“)”结束。

        2.双分号“;;”表示命令序列结束,相当于java中的break。

        3.最后的“*)”表示默认模式,相当于java中的default。


三、for循环



1.基本语法1


         for (( 初始值;循环控制条件;变量变化 ))

          do

            程序

          done


2.基本语法2


        for 变量 in 值1 值2 值3…

          do

            程序

          done


3.  实例


#!/bin/bash
#打印命令行输入的参数
 
#使用$*
for i in "$*"
do
        echo "num is $i"
done
 
#使用$@
for i in "$@"
do
        echo "num is $i"
done


fa362ed01558448897eb26659647dffc.png


从这里也可以看出$*和$@的区别。

1. #!/bin/bash
2. #按顺序输出1到10
3. for ((i=1;i<=10;i++))
4. do
5. echo "$i"
6. done


a39d4236397046f9ac3f2528ac892795.png


四、while循环 



1.基本语法


        while [ 条件判断式 ]

          do

                    程序

          done


2.  实例


#!/bin/bash
#按顺序输出整数1到10
i=1
while [ $i -le 10 ]
do
        echo "$i"
        i=$[$i+1]
done


11c5d1c450b1441ca30de7840f4238fc.png