Compartilhar via


Sobre 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 um loop while) é uma construção de linguagem para a criação de 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, pois sua sintaxe é menos complicada. Além disso, é 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 inserir a <statement list> seção. A parte da condição da instrução é resolvida como true ou false. Desde que a condição permaneça verdadeira, o PowerShell executa a <statement list> seção novamente.

A <statement list> seção da instrução contém um ou mais comandos que são executados cada vez 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 foi criada ou se a variável $val foi criada e inicializada como 0.

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

Neste exemplo, a condição ($val não é igual a 3) é true enquanto $val = 0, 1, 2. Cada vez pelo loop, $val é incrementado em 1 usando o + + operador de incremento unário ($Val + + ). A última hora pelo loop, $val = 3. Quando $val é igual a 3, a instrução Condition é 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