Linux Shell中的循环控制语句

Linux Shell中的循环控制语句

在编写Shell脚本时,循环是一种常用的控制结构,用于重复执行一系列命令。在Shell中,主要有三种循环控制语句:for循环,while循环,和until循环。

1. For循环

for循环是最常见的循环控制语句。它可以遍历一个列表中的每个元素,并对每个元素执行一系列命令。

for variable in list
do
    commands
done

示例:

遍历一个数字列表:

for i in 1 2 3 4 5
do
    echo "Number: $i"
done

遍历一个字符串列表:

for name in Alice Bob Charlie
do
    echo "Hello, $name!"
done

以上两个例子,默认以空格分隔元素

循环遍历数组:

colors=("red" "green" "blue" "yellow")

for color in "${colors[@]}"
do
    echo "Color: $color"
done

输出从1到10的数字:

for ((i=0;i<10;i++))
do
    echo "场景2 i is $i"
done

2. While循环

while循环会在给定的条件为真时不断执行一系列命令。

while condition
do
    commands
done

示例:

打印1到5的数字:

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

循环和read命令遍历文件的每一行

filename="sample.txt"
while IFS= read -r line
do
    echo "Line: $line"
done < "$filename"

3. Until循环

until循环与while循环相反,它会在给定的条件为假时不断执行一系列命令。

until condition
do
    commands
done

示例:

打印1到5的数字:

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

循环控制命令

在循环中,有时我们需要提前结束循环或跳过当前迭代。Shell提供了两个命令来实现这些控制:breakcontinue

  • break:用于退出整个循环。
  • continue:用于跳过当前迭代,继续执行下一次迭代。

示例:

使用break退出循环:

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

使用continue跳过特定迭代:

for i in {1..10}
do
    if [ $i -eq 5 ]
    then
        continue
    fi
    echo "Number: $i"
done
  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑风风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值