shell脚本之循环和循环控制

一、循环

1.for循环

1)格式

基本格式

for var in list
do
    循环体
done

其中
list是可迭代的对象,常见的包括:
数组
$(seq n m)  表示从n到m的正整数序列
{n..m}      表示从n到m的正整数
value1 value2 value3 ...   一系列值,可以是数值和字符串,value有空格必须使用双引号或者单引号

c语言风格的格式

for ((变量初始值;循环控制条件;变量变化))
do
    循环体
done

2) 示例

#!/bin/bashfor i in $(seq 1 10)
do
    echo "${i}"
done输出结果1 2 3 45678910

2.wihle循环

1)格式

while 条件
do
    循环体
done

2)示例

#!/bin/bash

a=10

while [ ${a} -gt 0 ]
do
    echo "${a}"
    a=$[ $a - 1 ]
done输出结果10987654321

3.until循环

1)格式

until 条件
do
    循环体
done

条件为假,进入循环;直到条件为真时退出循环

2)示例

#!/bin/bash

a=10

until [ ${a} -lt 0 ]
do
    echo "${a}"
    a=$[ $a - 1 ]
done输出结果10987654321

二、循环控制

1.break

退出循环,适用于所有循环

示例

#!/bin/bash

for i in {1..10}
do
    if [ ${i} -eq 2 ];then
        echo "${i}"
    else
        break
    fi
done


输出结果没有输出结果i=1时经过if判断执行break跳出循环,没有任何输出

2.continue

跳过本次循环,继续下一次循环,适用于所有循环

示例

#!/bin/bash

for i in {1..10}
do
    if [ ${i} -eq 2 ];then
        echo "${i}"
    else
        continue
    fi
done输出结果2

相关推荐