流程控制¶
参考:Shell 流程控制
学习以下流程控制语句
if
for
while
util
case
以及跳出循环命令
break
continue
注意:shell
的流程控制不可为空
if¶
格式如下:
if condition1
then
command1
command2
...
elif condition2
then
command1
command2
...
else
command1
command2
...
fi
for¶
格式如下:
for var in item1 item2 ... itemN
do
command1
command2
...
done
其中in
列表可以使用数组,字符串或文件名
$ cat test.sh
#!/bin/bash
for str in 'This is a string' 'This is a num'
do
echo $str
done
for var in $@
do
echo $var
done
执行如下命令
$ bash test.sh a b c d
This is a string
This is a num
a
b
c
d
while¶
格式如下:
while condition
do
command
done
while
循环可以使用关键字read
读取键盘信息
$ cat test.sh
#!/bin/bash
echo '按下 <CTRL-D> 退出'
echo -n '输入: '
while read VAR
do
echo "打印:${VAR}"
done
until¶
格式如下:
until condition
do
command
done
case¶
格式如下:
case 值 in
模式1)
command1
command2
...
commandN
;;
模式2)
command1
command2
...
commandN
;;
esac
break/continue¶
break
命令用于跳出所有循环(终止执行后面的所有循环)continue
命令用于跳出当前循环