控制流结构
一、退出状态
每个命令执行完之后都回返回状态,0表示执行成功,1
表示执行失败
二、循环和控制语句
1。if then else语句
格式如下:
if 条件1
then 命令1
elif 条件2
then 命令2
else 命令3
fi
使用fi语句时,必须将then部分放在新行。要么就使用
;分隔符。
NULL为空命令,该命令永远为真。
if 条件1
then : #do nothing
fi
如果脚本里有多个if语句,或者里面需要嵌入if语句,
则需要注意fi的配对问题。
2。case语句
case 值 in
模式1)
命令1;;
模式2)
命令2;;
esac
取值将检测匹配的每一个模式。一旦模式匹配,则执行
完匹配模式相应的命令。命令执行完后将不再继续其他
模式。
如果没有模式匹配,则使用星号*捕获该值。
* 任意模式
? 单一模式
[...] 范围中任一字符
在模式匹配的时候,也可以使用|来作为“或”。
3。for循环
格式如下:
for 变量名 in 列表
do
命令1
命令2
done
当变量值在列表里,for循环则执行一次所有命令,使
用变量名访问列表中取值。
如果在for循环中省略掉列表,则它将使用命令行参数
作为默认参数。即如下所示:
for params in "$@"
4.Unitl循环
until循环执行一系列命令直至条件为真时停止。
格式:
until 条件
命令1
。。。
done
5.while循环
格式:
while 条件
do
命令1
命令2
。。。
done
可以通过break和continue来控制循环。