Linux之Shell编程(10)--Shell流程控制语句实例演示
Posted 菠萝印象威
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux之Shell编程(10)--Shell流程控制语句实例演示相关的知识,希望对你有一定的参考价值。
一.case … esac语句
和其它语言的 switch … case语句类似,case … esac也是选择语句,每个 case用 ) 开始,用 ;; 表示break,表示执行结束,跳出整个 case … esac 语句,语法格式如下:
case var in
选择模式1)
command1
command2
...
commandN
;;
选择模式2)
command1
command2
...
commandN
;;
esac
实例演示case … esac
#!/bin/bash
i=10
case $i in
5) echo 'i= 5'
;;
10) echo 'i= 10'
;;
15) echo 'i = 15'
;;
esac
结果:
如果都不满足条件,那么会直接跳出语句。
结果:
或者设定都不满足的判断语句,例如:
二.break,continue语句
Shell里可以使用continue和break语句来中断执行程序。
1.break语句
break命令是跳出所有循环,并且终止执行后面的所有循环。
break语句实例演示
#!/bin/sh
i=10
for k in 1 2 4 9 11
do
if [ $i -eq $k ];then
echo "i=k"
break
else
echo "i=$i"
echo "k=$k"
fi
done
结果:
多重循环中的break
结果:
break+数字表示跳出第几个循环。
2.continue语句
和其它语言的continue语句类似continue命令不会跳出所有循环,仅仅跳出当前循环。
#!/bin/sh
i=10
for k in 1 2 10 3 4
do
if [ $i -eq $k ];then
echo "i=k"
continue
else
echo "i=$i"
echo "k=$k"
fi
done
结果:
如果改为break,结果为:
很明显可以看出,break是直接终止整个循环,而continue是跳出当前循环,继续执行。
三.until语句
until 循环执行一系列命令直至条件为 true 时停止。
#!/bin/sh
i=10
until [ $i = 5 ]
do
echo $i
i=`expr $i - 1`
done
结果:
执行i = i-1,直到i=5
以上是关于Linux之Shell编程(10)--Shell流程控制语句实例演示的主要内容,如果未能解决你的问题,请参考以下文章
linux之Shell编程--Shell流程控制语句实例演示
Linux之Shell编程(10)--Shell流程控制语句实例演示