linux之Shell编程--Shell流程控制语句实例演示
Posted 菠萝印象威
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux之Shell编程--Shell流程控制语句实例演示相关的知识,希望对你有一定的参考价值。
一.Shell流程控制语句之if else…fi
和其它编程语言相同的是,Shell也有流程控制语句,包括(if else 、while、case、continue、for等等),但是,具体的格式却有着很大的不同。
实例演示if else…fi语句
#!/bin/bash
a=10
if [ $a == 10 ];then
echo "a=10"
else
echo "a!=10"
fi
结果:
看过我之前文章的人肯定对这个非常熟悉,因为,我的实例演示有很多if else…fi的流程控制语句。
但是,这个语句也有很多需要注意的地方。
注意:
1.if语句内容外部使用[]表示,且,if和[]之间有空格,[]内部的内容也要和[]有空格,变量和运算符之间也要有空格隔开,比如if [ $a == 10 ]。
2.if语句必须要有then,可以一行写,中间使用;隔开,也可以换行写。
错误示范:
结果:
3.语句结束的末尾使用fi表示结束符。
错误示范:
结果:
if else…fi语句就介绍到这里,虽然很常见,但是有很多容易忽略的错误。
二.if else-if else
和其它语言不同的是,Shell中的大于或等于三个判断条件的语句使用的是 if elif else
实例演示
#!/bin/bash
b=10
if [ $b == 1 ];then
echo "b=1"
elif [ $b == 10 ];then
echo "b=10"
elif [ $b == 3 ];then
echo "b=3"
else
echo "b=?"
fi
结果:
当然,也可以省略最后一个else,不会报错。
结果:
三.for循环
实例演示
#!/bin/bash
for loop in 1 2 3 4 5
do
echo "The value is: $loop"
done
array=(1 2 3 a)
for i in ${array[*]}
do
echo "The value is: $i"
done
for str in Hello World
do
echo $str
done
结果:
只要记住for循环的格式就行了
for i in 数组或者item1 item2…
do
…
done
四.while循环
#!/bin/bash
i=10
while(( $i>5 ))
do
echo $i
let "i--"
done
结果:
注意
可以使用let "变量"对变量进行操作。
以上是关于linux之Shell编程--Shell流程控制语句实例演示的主要内容,如果未能解决你的问题,请参考以下文章
linux12shell编程 --> 流程控制之select语句
linux12shell编程 -->流程控制之while循环
shell编程之常用判断条件流程控制IFcaseforWHILE循环read读取控制台输入函数basenamedirname以及自定义函数