📅  最后修改于: 2023-12-03 15:35:31.473000             🧑  作者: Mango
在Shell中,循环语句主要通过 for
和 while
两种类型实现,本文将详细介绍Shell中的循环语句。
Shell中的 for 循环语法如下:
for 变量名 in 取值列表
do
循环体语句
done
其中,变量名
为循环计数器,取值范围为 取值列表
中的所有值。
举一个例子:
#!/bin/bash
for i in {1..5}
do
echo $i
done
这段代码将输出:
1
2
3
4
5
其中, {1..5}
表达式表示一个数字区间值,可以取到区间范围内的所有整数。
Shell中的 while 循环语法如下:
while [ condition ]
do
循环体语句
done
其中,condition
是运算结果为真(0)或假(非0)的表达式。当 condition
为真时,重复执行 do
和 done
之间的命令语句。
举一个例子:
#!/bin/bash
count=1
while [ $count -le 5 ]
do
echo $count
((count++))
done
这段代码将输出:
1
2
3
4
5
其中, -le
是 Shell 中常用的比较运算符之一,表示小于或等于(less than or equal to)。
Shell中的 until 循环语法如下:
until [ condition ]
do
循环体语句
done
其中,condition
是运算结果为真(0)或假(非0)的表达式。当 condition
为假时,重复执行 do
和 done
之间的命令语句。
举一个例子:
#!/bin/bash
count=1
until [ $count -gt 5 ]
do
echo $count
((count++))
done
这段代码将输出:
1
2
3
4
5
其中, -gt
是 Shell 中常用的比较运算符之一,表示大于(greater than)。
在循环语句中,我们还可以使用 break
和 continue
命令。
break
命令用于跳出循环体。例如:
#!/bin/bash
for i in {1..5}
do
if [ $i -eq 3 ]
then
break
fi
echo $i
done
这段代码将输出:
1
2
当循环计数器 $i 的值等于 3 时,循环执行被中断,不再输出后面的数值。
continue
命令用于跳过循环体中的某一次迭代。例如:
#!/bin/bash
for i in {1..5}
do
if [ $i -eq 3 ]
then
continue
fi
echo $i
done
这段代码将输出:
1
2
4
5
当循环计数器 $i 的值等于 3 时,这次循环被跳过,不再输出数值。