Shell 4. 循环语句

for循环语句

第一种语法结构

for variable in {list}
do 
    code
done

实例

#! /bin/zsh


for n in 'Jack' 'Tom' 'Faker'
do
    echo "my name is ${n}"

done


第二种语法结构

for variable in {start..end..step}
do
    code

done

实例

#! /bin/zsh


for num in {1..10}
do 
    echo "${num}"
done

第三种语法结构

for ((expression1;expression2;expression3))
do
    code
done

实例

#! /bin/zsh


for (( i=1; i<11; i++ ))
do
    echo "${i}"
done

遍历数组

#! /bin/zsh

arr=('Jack' 'Tom' 'Faker')

for n in ${arr[*]}
do
    echo $n
done

until循环语句

一直运行里面的代码,当满足 expression 条件时 退出循环

语法

until expression
do
    code
done

实例

#! /bin/zsh


i=1

until [ "${i}" -eq 11 ]
do
    echo "${i}"
    i=$[i+1]   # 还可以这样子写: let "i++"

done

===> 返回以下内容
1
2
3
4
5
6
7
8
9
10

while循环语句

满足expression条件时运行里面的代码,不满足时退出。

语法

while expression
do 
    code
done

实例

#! /bin/zsh


i=1

while [ $i -lt 11 ]
do
    echo "$i"

    let "i++"
done

===》

1
2
3
4
5
6
7
8
9
10

continue语句

跳过当次循环(continue后面的语句就都不执行了),进入下一次循环。

实例

#! /bin/zsh


i=1

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

===》输出

1
2
3
4
6
7
8
9
10

break语句

结束循环,break 后面还可以加一个参数(整数),来指定跳出几层循环(有时候会用到多次循环)

实例

#! /bin/zsh


i=1

while [ $i -lt 11 ]
do

    if [ $i -eq 5 ];then
        break
    fi
    echo "$i"
    
    let "i++"

done


===》 输出
1
2
3
4
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容