for循环

for循环的用法主要有两种:(1)用in去遍历list中的每一个元素;(2)使用类似于C语言的语法

用in去遍历list中元素

in后面接静态list

#!/bin/bash
i=1
for day in Mon Tue Wed; do
    echo "day $i is : $day"
    i=$(expr $i + 1)
done

输出结果:

day 1 is : Mon
day 2 is : Tue
day 3 is : Wed

如果用双引号把Mon Tue Wed引起来,则list的长度会被看成是1

#!/bin/bash
i=1
for day in "Mon Tue Wed"; do
    echo "day $i is : $day"
    i=$(expr $i + 1)
done

输出结果:

in后面接变量

输出结果:

如果,把$str用双引号引起来,list的也被看作是只有一个元素

输出结果:

unix命令的输出作为list

输出结果:

in遍历数组

输出

in后面接数字区间

输出结果:

数字区间跨度为2

输出结果:

遍历文件或目录

假设/home/docker/目录下有a.txt文件和rpm文件夹

输出结果:

break语法

输出结果:

continue语法

输出结果:

类似C语言的用法

类C语言语法

输出结果:

Last updated

Was this helpful?