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

4 de abril de 2022 às 22:05

O loop For é 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 seja o mais direto.

CONTINUA DEPOIS DA PUBLICIDADE - OTZADS

Desde iterar sobre arrays até executar uma função um número predeterminado de vezes, há muitas coisas que você pode conseguir com esta ferramenta. Aqui está um tutorial sobre como usar loops For no PowerShell.

Como um PowerShell For Loop pode executar um comando varias

Qual é o uso de loops for no PowerShell?

Ao contrário do Prompt de Comando, o PowerShell é um ambiente de script completo. Isso significa que você pode escrever scripts do PowerShell reutilizáveis ​​para realizar tarefas automaticamente, em vez de inserir comandos manualmente. E loops For são a chave para escrever esses módulos.

Uma instrução For repete um bloco de script um número específico de vezes, modificando uma determinada variável para acompanhar a progressão. Isso permite que você use o loop para alguns cenários bastante interessantes.

Como um PowerShell For Loop pode executar um comando varias

Você pode gerar sequências de números, determinar um número primo ou exibir um cronômetro de contagem regressiva. De forma mais prática, você pode iterar sobre uma matriz de objetos, realizando alguma ação com cada entrada.

A sintaxe de um loop For no PowerShell

Os loops For funcionam no Windows PowerShell da mesma forma que em qualquer linguagem de programação. As expressões que inicializam a variável de rastreamento, testam seu valor e modificam a variável são colocadas entre colchetes após “For”, separadas por ponto e vírgula. Em seguida, vem a própria lista de instruções limitada por chaves.

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

{

Bloco de script

}

Como usar o loop For em um script do PowerShell

Usar o loop For é bem simples. Sempre que você encontrar uma situação que exija a repetição de uma etapa ligeiramente variável, você deve colocá-la em um loop For.

CONTINUA DEPOIS DA PUBLICIDADE - OTZADS
1649120728 462 Como um PowerShell For Loop pode executar um comando varias

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

$n = 10

CONTINUA DEPOIS DA PUBLICIDADE

$ soma = 0

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

{

$ soma = $ soma + $ i

}

“A soma de $ n números naturais é $ soma”

Como um PowerShell For Loop pode executar um comando varias

Acessando Arrays Através de um For Loop

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 um array $week com sete elementos. Você pode gerar a lista dos dias contidos na matriz usando um loop For simples, conforme demonstrado no exemplo a seguir.

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

{

$ semana[$i]

}

1649120728 876 Como um PowerShell For Loop pode executar um comando varias

Usando o loop ForEach para iterar rapidamente por meio de uma matriz

Outra forma do loop For é a instrução ForEach. Esta versão simplifica a passagem pelo conteúdo de uma matriz do PowerShell e o processamento individual. O trecho de código anterior, por exemplo, pode ser reescrito assim:

Foreach ($dia em $semana)

{

$dia

}

1649120728 588 Como um PowerShell For Loop pode executar um comando varias

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

Como o For Loop é diferente de outros tipos de loops?

O loop For não é o único tipo de instrução de loop disponível para você. Como a maioria das linguagens de programação, o PowerShell possui 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 for avaliada como verdadeira. Como a expressão é avaliada primeiro, há uma chance de o código não ser executado ou acabar como um loop infinito.

Enquanto (Doença)

{

Bloco de script

}

1649120728 0 Como um PowerShell For Loop pode executar um comando varias

Fazer enquanto

Se você estiver escrevendo um script que precisa ser executado pelo menos uma vez – mesmo que a expressão seja avaliada como false – então você pode usar o loop Do-While. A única diferença do 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)

1649120728 990 Como um PowerShell For Loop pode executar um comando varias

Fazer-Até

Outra versão desse loop é Do-Until. Basicamente, ele executa o bloco de código e o repete até que a expressão de teste seja verdadeira – o inverso de um loop Do-While. Não é uma estrutura particularmente útil, pois você pode conseguir a mesma coisa modificando a condição em um loop Do-While padrão.

Fazer {

Bloco de script

}

Até (Doença)

1649120728 254 Como um PowerShell For Loop pode executar um comando varias

Por que o loop for é 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ê precisa se lembrar manualmente de criar uma variável fora do loop e depois incrementá-la (ou decrementá-la) durante cada passagem do loop.

Como você pode esperar, os programadores geralmente esquecem essa etapa, levando a um script que não funciona conforme o esperado. Isso desperdiça um tempo precioso na depuração.

O loop For evita esse problema exigindo as expressões de inicialização e incremento dentro dos colchetes iniciais. Isso leva a scripts mais limpos e robustos.

Quando você deve usar o loop For no PowerShell?

O PowerShell trata da criação de scripts para automação. E provavelmente a ferramenta mais útil para conseguir isso é o loop For. Você pode usá-lo para substituir muitas operações de copiar e colar por um script mais compacto e elegante.

A função mais comum desse loop é iterar sobre uma matriz, uma entrada por 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.

O loop For pontua sobre outros algoritmos de loop, incluindo todas as funções essenciais de um loop nos parâmetros, evitando erros devido ao esquecimento dessas instruções. Isso torna o loop For indispensável em qualquer cenário que exija a repetição de um conjunto de comandos.

Fonte

Mais sobre:
SUGESTÕES PARA VOCÊ