📜  shell 脚本 while 循环示例 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:47:26.461000             🧑  作者: Mango

Shell脚本while循环

在Shell脚本中,while循环是一种常用的循环结构。它可以根据条件来重复执行代码块,直到条件不满足为止。本文将介绍while循环的语法、用法和示例。

语法

while循环的语法格式如下:

while [ condition ]
do
    command1
    command2
    ...
    commandn
done

其中,condition是一个命令或者表达式,如果它的退出状态为0(成功),则循环体中的命令会被执行。如果condition的退出状态为非0(失败),则循环体中的命令不会被执行,直接跳出循环。

示例1:打印0到4的数字

以下脚本可以打印0到4的数字:

#!/bin/bash

i=0
while [ "$i" -lt 5 ]
do
    echo $i
    i=$((i+1))
done

输出结果为:

0
1
2
3
4

脚本首先定义变量i为0,然后使用while循环,条件为$i -lt 5。循环体中先打印$i的值,然后将$i的值加1,最后跳转到循环开头继续执行,直到$i的值不小于5为止。

示例2:计算1到100的和

以下脚本可以计算1到100的和:

#!/bin/bash

n=1
sum=0
while [ "$n" -le 100 ]
do
    sum=$((sum+n))
    n=$((n+1))
done
echo "1+2+...+100=$sum"

输出结果为:

1+2+...+100=5050

脚本首先定义变量n为1,sum为0,然后使用while循环,条件为$n -le 100。在循环体中,将$n的值累加到$sum中,然后将$n的值加1,最后跳转到循环开头继续执行,直到$n的值大于100为止。最后输出$sum的值。