📜  批处理循环 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:10:03.823000             🧑  作者: Mango

批处理循环 - Shell-Bash

批处理循环是重复执行一个命令序列的一种机制, 它可以自动化一些常规的任务,节省了程序员不少时间和精力。Shell-Bash是一种常见的Unix/Linux操作系统的命令行解释器,内置的循环语句也使得在Shell-Bash下编写脚本更为方便。

for循环

for循环会按照指定的循环变量来迭代执行,循环变量可以是数字或者字符串类型。

数字类型

下面是一个简单的for循环示例,它将从1到5输出所有的数字:

#!/bin/bash

for i in {1..5}
do
    echo $i
done

这段脚本中, for i in {1..5}定义了一个循环变量i, 它会从1开始迭代到5。循环体中使用了echo命令将i的值输出到终端。

字符串类型

循环变量也可以是字符串类型,下面这个例子演示了如何遍历一个字符串数组:

#!/bin/bash

names=("john" "mike" "tom")

for name in "${names[@]}"
do
    echo $name
done

这段脚本中, names=("john" "mike" "tom")定义了一个字符串数组names,for循环会依次迭代数组中的元素,将它们输出到终端。

while循环

while循环会一直执行循环体中的命令,直到指定的条件不再满足。

下面这个例子演示了如何使用while循环来生成一个数列:

#!/bin/bash

i=1
while [ $i -le 5 ]
do
    echo $i
    i=$((i+1))
done

这段脚本中, i=1定义了一个初始值为1的变量i, while [ $i -le 5 ]指定了执行循环体的条件,即变量i小于等于5。在循环体中,使用了echo命令将i的值输出到终端,然后将i加1,直到i大于5为止。

until循环

until循环与while循环的不同在于,它会一直执行循环体中的命令,直到指定的条件满足为止。

下面这个例子演示了如何使用until循环来生成一个数列:

#!/bin/bash

i=1
until [ $i -gt 5 ]
do
    echo $i
    i=$((i+1))
done

这段脚本中, i=1定义了一个初始值为1的变量i, until [ $i -gt 5 ]指定了执行循环体的条件,即变量i大于5。在循环体中,使用了echo命令将i的值输出到终端,然后将i加1,直到i大于5为止。

Conclusion

通过本文,我们学习了如何使用Shell-Bash循环,覆盖了for循环、while循环和until循环。循环控制结构是Shell-Bash脚本中最常用的控制结构之一,程序员需要熟练掌握循环语句,才能更好地利用Shell-Bash来进行脚本开发。