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
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
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
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.
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
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></=>