Como um PowerShell for Loop pode executar um comando várias vezes

Como um PowerShell for Loop pode executar um comando várias vezes

O LOOP é uma das ferramentas mais valiosas em qualquer linguagem de programação, e o Microsoft PowerShell não é diferente. Você pode usar outros loops para repetir comandos, mas o loop for talvez o mais direto.

Desde a iteração de matrizes até a execução de uma função um número predeterminado de vezes, há muitas coisas que você pode alcançar com esta ferramenta. Aqui está um tutorial sobre como usar para loops em PowerShell.

Índice

    Você pode gerar sequências de números, determinar um número primo ou exibir um cronômetro de contagem regressiva. Mais praticamente, você pode iterar sobre uma variedade de objetos, executando alguma ação com cada entrada.

    A sintaxe de um loop em PowerShell

    Para loops, trabalhe no Windows PowerShell da mesma maneira que eles fazem em qualquer linguagem de programação. Expressões inicializando a variável de rastreamento, testando seu valor e modificando a variável são criadas dentro dos colchetes seguindo "for", separados por semicolons. Depois vem a própria lista de declarações vinculada por aparelhos encaracolados.

    Para (Inicialização; Doença; Atualizar)

    Bloco de script

    Como usar o loop for em um script PowerShell

    Usar o loop for é bem simples. Sempre que você encontra uma situação que exige repetir uma etapa ligeiramente variável, você deve colocá -la em um loop para.

    Digamos que você precise escrever um trecho de código que possa encontrar a soma de todos os números naturais até que um número n, contido na variável $ n. Aqui está um exemplo básico para loop:

    $ n = 10

    $ sum = 0

    Para ($ i = 1; $ i -le $ n; $ i ++)

    $ sum = $ sum + $ i

    “A soma de US $ n Números naturais é $ sum”

    Acessando matrizes através de um loop for

    Gerar sequências numéricas é dificilmente o que a maioria das pessoas usa o PowerShell. Um uso mais comum é iterar sobre uma matriz.

    Digamos que você tenha uma semana de $ semana com sete elementos. Você pode gerar a lista dos dias contidos na matriz usando um loop simples, conforme demonstrado no exemplo a seguir.

    Para ($ i = 0; $ i -lt $ semana.Comprimento ; $ i ++)

    $ semana [$ i]

    Usando o loop foreach para iterar rapidamente através de uma matriz

    Outra forma do loop for a declaração foreach. Esta versão simplifica passar pelo conteúdo de uma matriz PowerShell e processando -as individualmente. O trecho de código anterior, por exemplo, pode ser reescrito assim:

    Foreach ($ dia em $ semana)

    $ dia

    Ao lidar com objetos mais complexos, você também pode usar o cmdlet foreach-object para executar uma ação sobre o conteúdo de qualquer comando PowerShell.

    Como o loop for diferente de outros tipos de loops?

    O loop for não é o único tipo de declaração de loop disponível para você. Como a maioria das linguagens de programação, o PowerShell tem vários tipos de loops.

    Enquanto

    O mais simples deles é o loop while. Tudo o que você tem é uma condição e um bloco de script, e o loop é executado enquanto a expressão de teste avaliar. Como a expressão é avaliada primeiro, há uma chance para o código não ser executado ou acabar como um loop infinito.

    Enquanto (Doença)

    Bloco de script

    Fazer enquanto

    Se você estiver escrevendo um script que precisa ser executado pelo menos uma vez-mesmo que a expressão seja avaliada como falsa, você pode usar o loop do dado-while. A única diferença entre o loop while é que ele coloca o bloco de comando antes da condição, o que significa que o código é executado antes que a expressão de teste seja verificada pela primeira vez.

    Fazer

    Bloco de script

    Enquanto (Doença)

    Fazer-until

    Outra versão deste loop é fazer do que. Basicamente, ele executa o bloco de código e depois o repete até que a expressão de teste seja verdadeira - o inverso de um loop de fazer -. Não é uma estrutura particularmente útil, pois você pode alcançar a mesma coisa modificando a condição em um loop padrão do que fazer.

    Fazer

    Bloco de script

    Até (Doença)

    Por que o loop é melhor

    O problema com todas essas outras estruturas de loop é que elas não incluem o valor inicial ou as instruções de atualização. Você deve se lembrar manualmente de criar uma variável fora do loop e depois incrementá -la (ou diminuí -lo) durante cada passe do loop.

    Como você pode esperar, os programadores costumam esquecer esta etapa, levando a um script que não funciona como pretendido. Isso desperdiça tempo precioso na depuração.

    O loop for evita esse problema, exigindo as expressões de inicialização e incremento entre os colchetes de partida. Isso leva a scripts mais limpos e mais robustos.

    Quando você deve usar o loop for in PowerShell?

    PowerShell tem tudo a ver com criar scripts para automação. E provavelmente a ferramenta mais útil para alcançar isso é o loop for. Você pode usá-lo para substituir muitas operações de cola de cópia por um script mais compacto e elegante.

    A função mais comum desse loop é iterar ao longo de uma matriz, uma entrada de cada vez. Para um script ainda mais simplificado, você também pode usar um loop foreach. Você também pode usar o loop for para gerar sequências numéricas, embora isso raramente seja necessário.

    As pontuações de loop em relação a outros algoritmos de loops, incluindo todas as funções essenciais de um loop nos parâmetros, impedindo quaisquer erros devido ao esquecimento dessas declarações. Isso torna o loop for indispensável em qualquer cenário pedindo repetir um conjunto de comandos.