shell里面也有流程控制,其使用方法与C和Java类似,不过也存在差别
if else
if
语法格式1
2
3
4
5
6
7if condition
then
    command1 
    command2
    ...
    commandN 
fi
if语句也可以写在一行1
if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi
if else
语法格式1
2
3
4
5
6
7
8
9if condition
then
    command1 
    command2
    ...
    commandN
else
    command
fi
if else-if else
语法格式1
2
3
4
5
6
7
8
9if condition1
then
    command1
elif condition2 
then 
    command2
else
    commandN
fi
for循环
语法格式1
2
3
4
5
6
7for var in item1 item2 ... itemN
do
    command1
    command2
    ...
    commandN
done
也可以写成一行1
for var in item1 item2 ... itemN; do command1; command2… done;
while循环
语法格式1
2
3
4while condition
do
    command
done
无限循环
| 1 | while : | 
| 1 | while true | 
| 1 | for (( ; ; )) | 
until循环
until循环执行一系列命令直至条件为true时停止
语法格式1
2
3
4until condition
do
    command
done
case
用case语句匹配一个值与一个模式,如果匹配成功,执行相匹配的命令
语法格式1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20case 值 in
模式1)
    command1
    command2
    ...
    commandN
    ;;
模式2)
    command1
    command2
    ...
    commandN
    ;;
*)
    command1
    command2
    ...
    commandN
    ;;
esac
跳出循环
break
break命令允许跳出所有循环
continue
continue跳出当前循环
 
        