Compartilhar via


Sobre o While

DESCRIÇÃO BREVE

Descreve uma instrução de linguagem que você pode usar para executar um bloco de comando com base nos resultados de um teste condicional.

DESCRIÇÃO LONGA

A instrução While (também conhecida como loop While) é um constructo de linguagem para criar um loop que executa comandos em um bloco de comando, desde que um teste condicional seja avaliado como true. A instrução While é mais fácil de construir do que uma instrução For porque sua sintaxe é menos complicada. Além disso, ele é mais flexível do que a instrução Foreach porque você especifica um teste condicional na instrução While para controlar quantas vezes o loop é executado.

O seguinte mostra a sintaxe da instrução While:

while (<condition>){<statement list>}

Quando você executa uma instrução While, o PowerShell avalia a <condition> seção da instrução antes de entrar na <statement list> seção. A parte da condição da instrução é resolvida como verdadeira ou falsa. Enquanto a condição permanecer verdadeira, o PowerShell executará novamente a <statement list> seção.

A <statement list> seção da instrução contém um ou mais comandos que são executados sempre que o loop é inserido ou repetido.

Por exemplo, a instrução While a seguir exibe os números de 1 a 3 se a variável $val não tiver sido criada ou se a variável $val tiver sido criada e inicializada como 0.

while($val -ne 3)
{
    $val++
    Write-Host $val
}

Neste exemplo, a condição ($val não é igual a 3) é verdadeira enquanto $val = 0, 1, 2. Cada vez por meio do loop, $val é incrementado em 1 usando o operador de incremento unário ++ ($val++). A última vez pelo loop, $val = 3. Quando $val é igual a 3, a instrução de condição é avaliada como false e o loop é encerrado.

Para escrever convenientemente esse comando no prompt de comando do PowerShell, você pode inseri-lo da seguinte maneira:

while($val -ne 3){$val++; Write-Host $val}

Observe que o ponto e vírgula separa o primeiro comando que adiciona 1 a $val do segundo comando que grava o valor de $val no console.

CONSULTE TAMBÉM

about_Comparison_Operators

about_Do

about_Foreach

about_For

about_Language_Keywords