Android

Bash até loop

introduction to loops | bash shell scripting | loops for shell scripting

introduction to loops | bash shell scripting | loops for shell scripting

Índice:

Anonim

Loops são um dos conceitos fundamentais das linguagens de programação. Os loops são úteis quando você deseja executar uma série de comandos repetidamente até que uma condição específica seja atendida.

Em linguagens de script como o Bash, os loops são úteis para automatizar tarefas repetitivas. Existem três construções básicas de loop no script Bash, para loop, enquanto loop e até.

Este tutorial explica o básico do loop até no Bash.

Bash até Loop

O loop até é usado para executar um determinado conjunto de comandos, desde que a condição especificada seja falsa.

O loop Bash até assume o seguinte formato:

until do done

A condição é avaliada antes de executar os comandos. Se a condição for avaliada como falsa, os comandos serão executados. Caso contrário, se a condição for avaliada como verdadeira, o loop será encerrado e o controle do programa será passado para o comando a seguir.

No exemplo abaixo, em cada iteração, o loop imprime o valor atual do counter variáveis ​​e incrementa a variável em um.

#!/bin/bash counter=0 until do echo Counter: $counter ((counter++)) done

O loop itera desde que a variável do counter tenha um valor maior que quatro. O script produzirá a seguinte saída:

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

Exemplo de Bash até Loop

O script a seguir pode ser útil se seu host git estiver com tempo de inatividade e, em vez de digitar manualmente git pull várias vezes até que o host esteja online, você poderá executar o script uma vez. Ele tentará puxar o repositório até que seja puxado com sucesso.

#!/bin/bash until git pull &> /dev/null do echo "Waiting for the git host…" sleep 1 done echo -e "\nThe git repository is pulled."

O script imprimirá “Aguardando o host git…” e será suspenso por um segundo até que o host git fique online. Uma vez que o repositório é puxado, ele imprimirá "O repositório git é puxado.".

Waiting for the git host… Waiting for the git host… Waiting for the git host… The git repository is pulled.

Conclusão

Os loops while e while são semelhantes entre si, com a principal diferença: o loop while itera enquanto a condição é avaliada como true e o loop while itera enquanto a condição é false .

terminal do loop bash