about_If

Aplica-se a: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0

TÓPICO

about_If

DESCRIÇÃO BREVE

Descreve um comando de linguagem que você pode usar para executar listas de instrução com base nos resultados de um ou mais testes condicionais.

DESCRIÇÃO LONGA

Você pode usar a instrução If para executar blocos de código se um teste condicional especificado for avaliado como true. Você também pode especificar um ou mais testes condicionais adicionais para executar se todos os testes anteriores forem avaliados como false. Finalmente, você pode especificar um bloco de código adicional que é executado se nenhum outro teste condicional anterior for avaliado como true.

SINTAXE

O exemplo a seguir mostra a sintaxe de instrução If:

        if (<test1>) 
            {<statement list 1>}
        [elseif (<test2>)
            {<statement list 2>}]
        [else
            {<statement list 3>}]

Quando você executa uma instrução If, o Windows PowerShell® avalia a expressão condicional <test1> como true ou false. Se <test1> for verdadeiro, a <lista de instrução 1> é executada, e Windows PowerShell sai da instrução If. Se <test1> for false, Windows PowerShell avalia a condição especificada pela instrução condicional <test2>.

Se <test2> for verdadeiro, a <lista de instrução 2> é executada, e Windows PowerShell sai da instrução If. Se ambos os <test1> e <test2> forem avaliados como false, o bloco de código da <lista de instruções 3> é executado, e Windows PowerShell sai da instrução If.

Você pode usar várias instruções Elseif para encadear uma série de testes condicionais para que cada teste seja executado apenas se todos os testes anteriores forem false. Se você precisar criar uma instrução If que contém muitas instruções Elseif, considere o uso de uma instrução Switch em vez disso.

Exemplos

A forma mais simples da instrução If contém um único comando e não contém nenhuma instrução Elseif ou qualquer instrução Else. O exemplo a seguir mostra a forma mais simples da instrução If:

        if ($a -gt 2)
        {
            Write-Host "The value $a is greater than 2."
        }

Neste exemplo, se a variável $a for maior que 2, a condição é avaliada como true e a lista de instrução é executada. No entanto, se $a for menor ou igual a 2 ou não for uma variável existente, a instrução If não exibe uma mensagem. Ao adicionar uma instrução Else, uma mensagem é exibida quando $a é menor ou igual a 2, como mostra o exemplo a seguir:

        if ($a -gt 2)
        {
            Write-Host "The value $a is greater than 2."
        }
        else
        {
            Write-Host "The value $a is less than or equal to 2, is not 
        created or is not initialized."
        }

Para refinar ainda mais esse exemplo, você pode usar a instrução Elseif para exibir uma mensagem quando o valor de $a for igual a 2, como mostra o exemplo a seguir:

        if ($a -gt 2)
        {
            Write-Host "The value $a is greater than 2."
        }
        elseif ($a -eq 2)
        {
            Write-Host "The value $a is equal to 2."
        }
        else
        {
            Write-Host "The value $a is less than 2 or was not created 
        or initialized."
        }

CONSULTE TAMBÉM

about_Comparison_Operators

about_Switch