Sintaxe do loop while:
enquanto [doença]Faz
comandos
feito
O bloco inicial e final de enquanto loop são definidos por Faz e feito palavras-chave no script bash. A condição de finalização é definida no início do loop. Abra um editor de texto para escrever o script bash e testar os exemplos de loop while a seguir.
Exemplo-1: Itere o loop para um número fixo de vezes
Crie um arquivo bash chamado while1.sh que contém o seguinte script.
n=1
enquanto [ $ n -a 5 ]
Faz
jogou fora 'Correndo$ nTempo'
((n ++))
feito
Neste exemplo, o loop irá iterar 5 vezes e imprimir o texto que é definido dentro do loop. A seguinte saída aparecerá se você executar while1.sh .
Exemplo 2: Usando a instrução break para saída condicional
pausa instrução é usada para sair do loop antecipadamente com base em uma condição particular. Crie um novo arquivo bash chamado while2.sh com o seguinte código.
n=1enquanto [ $ n -a 10 ]
Faz
E se [ $ n==6 ]
então
jogou fora 'encerrado'
pausa
ser
jogou fora 'Posição:$ n'
((n ++))
feito
Neste exemplo, o loop é declarado para iterar 10 vezes. De acordo com o script, ele será encerrado após uma iteração de 6 vezes para a instrução break. A seguinte saída aparecerá após a execução do script.
Exemplo 3: Usando a instrução continue para omitir uma etapa específica
Crie um novo arquivo bash chamado while3.sh com o seguinte código.
n=0enquanto [ $ n -a 5 ]
Faz
((n ++))
E se [ $ n==3 ]
então
Prosseguir
ser
jogou fora 'Posição:$ n'
feito
Neste exemplo, o loop irá iterar 5 vezes, mas não imprimirá todas as 5 posições. Quando o loop irá iterar por 3rdvezes então a instrução continue será executada e o loop irá para a próxima iteração sem imprimir o texto de 3rdposição. A seguinte saída aparecerá após a execução do script.
Exemplo 4: Criação de loop infinito
Às vezes, é necessário declarar loop infinito para vários fins de programação. Crie um novo arquivo bash chamado while4.sh e testar o código do loop infinito.
n=1enquanto:
Faz
printf 'O valor atual de n =$ n n'
E se [ $ n==3 ]
então
jogou fora 'Boa'
elif [ $ n==5 ]
então
jogou fora 'mau'
elif [ $ n==7 ]
então
jogou fora 'feio'
elif [ $ n==10 ]
então
saída 0
ser
((n ++))
feito
Nenhuma condição de finalização é definida para o loop neste exemplo. Esse tipo de loop é chamado de loop infinito. Aqui, a instrução de saída é usada para sair do loop infinito. Portanto, este loop será iterado por 10 vezes e quando o valor da iteração se tornar igual a 10, a instrução de saída será executada para sair do loop infinito.