重击直到循环

循环是编程语言的基本概念之一。 当您要反复运行一系列命令直到满足特定条件时,循环很方便。

在Bash等脚本语言中,循环对于自动执行重复任务非常有用。 Bash脚本中有3种基本的循环构造, for 循环 while 循环和 until 循环。

本教程介绍了 until 在Bash中循环播放。

重击 until 循环号

until 只要给定条件的计算结果为false,就可以使用循环执行给定的命令集。

重击 until 循环采用以下形式:

until [CONDITION]
do
  [COMMANDS]
done

在执行命令之前先评估条件。 如果条件为假,则执行命令。 否则,如果条件评估为真,则循环将终止,并且程序控制将传递给随后的命令。

在以下示例中,在每次迭代中,循环都会打印变量的当前值 counter 并将变量加一。

#!/bin/bash

counter=0

until [ $counter -gt 5 ]
do
  echo Counter: $counter
  ((counter++))
done

只要 counter 变量的值大于四。 该脚本将产生以下输出:

Counter: 0
Counter: 1
Counter: 2
Counter: 3
Counter: 4
Counter: 5

使用 breakcontinue 语句来控制循环执行。

重击 until 循环示例

当您的git主机停机时,以下脚本可能会很有用,而不是手动输入 git pull 多次(直到主机联机),您可以运行一次脚本。 它将尝试拉存储库直到成功。

#!/bin/bash

until git pull &> /dev/null
do
    echo "Waiting for the git host ..."
    sleep 1
done

echo -e "nThe git repository is pulled."

该脚本将显示“正在等待git主机……”,然后 sleep 一秒钟,直到git主机联机。 一旦仓库被拉出,它将打印“ git仓库被拉。”。

Waiting for the git host ...
Waiting for the git host ...
Waiting for the git host ...

The git repository is pulled.

结论#

whileuntil 循环彼此相似。 主要区别在于 while 只要条件求值,循环就会迭代 trueuntil 只要条件求值,循环就会迭代 false

如果您有任何疑问或反馈,请随时发表评论。

bash循环终端

Sidebar