logo

Bash Enquanto Loop

Neste tópico, demonstramos como usar a instrução while loop no Bash Script.

O bash enquanto loop pode ser definido como uma instrução de fluxo de controle que permite executar repetidamente um determinado conjunto de comandos, desde que a condição aplicada seja avaliada como verdadeira. Por exemplo, podemos executar o comando echo várias vezes ou apenas ler um arquivo de texto linha por linha e processar o resultado usando o loop while no Bash.

Sintaxe do Bash While Loop

Bash while loop tem o seguinte formato:

codificação java instrução if else
 while [ expression ]; do commands; multiple commands; done 

A sintaxe acima é aplicável somente se a expressão contiver uma única condição.

Se houver múltiplas condições a serem incluídas na expressão, a sintaxe do loop while será a seguinte:

 while [ expressions ]; do commands; multiple commands; done 

A sintaxe de uma linha do loop while pode ser definida como:

 while [ condition ]; do commands; done while control-command; do Commands; done 

Existem alguns pontos-chave da instrução 'while loop':

  • A condição é verificada antes de executar os comandos.
  • O loop 'while' também é capaz de realizar todo o trabalho que o 'loop' pode fazer.
  • Os comandos entre 'do' e 'done' são executados repetidamente enquanto a condição for avaliada como verdadeira.
  • Os argumentos para um loop 'while' podem ser uma expressão booleana.

Como funciona

O loop while é um loop de entrada restrita. Isso significa que a condição é verificada antes de executar os comandos do loop while. Se a condição for avaliada como verdadeira, o conjunto de comandos que seguem essa condição será executado. Caso contrário, o loop será encerrado e o controle do programa será dado ao outro comando após a instrução 'done'.

Exemplos de Bash While Loop

A seguir estão alguns exemplos de bash while loop:

While Loop com condição única

Neste exemplo, o loop while é usado com uma única condição na expressão. É o exemplo básico do loop while que imprimirá séries de números de acordo com a entrada do usuário:

Exemplo

 #!/bin/bash #Script to get specified numbers read -p 'Enter starting number: ' snum read -p 'Enter ending number: ' enum while [[ $snum -le $enum ]]; do echo $snum ((snum++)) done echo 'This is the sequence that you wanted.' 

Saída

Bash Enquanto Loop

While Loop com múltiplas condições

A seguir está um exemplo de loop while com múltiplas condições na expressão:

Exemplo

 #!/bin/bash #Script to get specified numbers read -p 'Enter starting number: ' snum read -p 'Enter ending number: ' enum while [[ $snum -lt $enum || $snum == $enum ]]; do echo $snum ((snum++)) done echo 'This is the sequence that you wanted.' 

Saída

inkscape x gimp
Bash Enquanto Loop

Loop infinito enquanto

Um loop infinito é um loop que não tem final ou terminação. Se a condição sempre for avaliada como verdadeira, ela criará um loop infinito. O loop será executado continuamente até ser interrompido à força usando CTRL+C :

Exemplo

 #!/bin/bash #An infinite while loop while : do echo 'Welcome to Javatpoint.' done 

Também podemos escrever o script acima em uma única linha como:

 #!/bin/bash #An infinite while loop while :; do echo 'Welcome to Javatpoint.'; done 

Saída

Bash Enquanto Loop

Aqui, usamos o comando integrado (:) que sempre retorna verdadeiro. Também podemos usar o comando integrado true para criar um loop infinito conforme abaixo:

Exemplo

 #!/bin/bash #An infinite while loop while true do echo 'Welcome to Javatpoint' done 

Este script bash também fornecerá a mesma saída que um script infinito acima.

Nota: Loops infinitos podem ser finalizados usando CTRL+C ou adicionando alguma saída condicional dentro do script.

While Loop com uma instrução Break

Uma instrução break pode ser usada para interromper o loop de acordo com a condição aplicada. Por exemplo:

Exemplo

 #!/bin/bash #While Loop Example with a Break Statement echo 'Countdown for Website Launching...' i=10 while [ $i -ge 1 ] do if [ $i == 2 ] then echo 'Mission Aborted, Some Technical Error Found.' break fi echo '$i' (( i-- )) done 

Saída

método java tostring

De acordo com o script, o loop é atribuído para iterar dez vezes. Mas há uma condição após oito iterações que interromperá a iteração e encerrará o loop. A seguinte saída será mostrada após a execução do script.

Bash Enquanto Loop

While Loop com uma instrução Continue

Uma instrução continue pode ser usada para pular a iteração para uma condição específica dentro do loop while.

Exemplo

 #!/bin/bash #While Loop Example with a Continue Statement i=0 while [ $i -le 10 ] do ((i++)) if [[ '$i' == 5 ]]; then continue fi echo 'Current Number : $i' done echo 'Skipped number 5 using Continue Statement.' 

Saída

Bash Enquanto Loop

Enquanto Loop com estilo C

Também podemos escrever um loop while em um script bash tão semelhante a um loop while na linguagem de programação C.

Exemplo

 #!/bin/bash #While loop example in C style i=1 while((i <= 10)) do echo $i let i++ done < pre> <p> <strong>Output</strong> </p> <img src="//techcodeview.com/img/bash-tutorial/46/bash-while-loop-6.webp" alt="Bash While Loop"> <h2>Conclusion</h2> <p>In this topic, we discussed how to use while loop statement in Bash to perform specific tasks.</p> <hr></=>