Bash for Loop com exemplos

Bash for Loop com exemplos

Bash é uma concha popular usada em sistemas Linux e MacOS. É uma ferramenta poderosa para automatizar tarefas repetitivas e pode ajudar a simplificar as tarefas de administração e desenvolvimento do sistema. Um dos recursos mais usados ​​do Bash é o loop for.

Neste tutorial, abordaremos o básico de loops, bem como os exemplos avançados para loops em Bash e mostrará como usá -los para automatizar seu trabalho.

O que é um loop em bash?

A for Loop é uma estrutura de controle no Bash que permite executar um conjunto de comandos repetidamente. É particularmente útil quando você precisa executar uma tarefa um certo número de vezes ou quando precisa processar uma lista de itens.

A para loop tem três componentes principais:

  • A palavra -chave 'para'
  • Uma variável que manterá cada item na lista
  • A lista de itens para iterar

Aqui está a sintaxe básica de um loop for bash:

para variable_name na lista dos comandos feitos
1234Para variable_name no listdo commandsdone

O loop for começa com a palavra -chave for, seguida pelo nome da variável que manterá cada item na lista, a palavra -chave e a lista de itens para iterar. O corpo do loop está fechado nas palavras -chave Do e feito.

Usando loops em Bash

Vejamos alguns exemplos para ver como os loops funcionam em Bash.

Exemplo 1: Impressão de números de 1 a 10

Aqui está um exemplo básico, que imprimirá números.

para i em 1… 10 fazer echo $ eu fiz
1234para i em 1… 10 fazer echo $ idone

Neste exemplo, estamos usando um loop para imprimir números de 1 para 10. Estamos usando uma variedade de números fechados em aparelhos encaracolados como a lista de itens para iterar. O corpo do loop consiste em um único comando que imprime o valor da variável loop eu.

Exemplo 2: Looping através de uma lista de itens

Você pode definir uma lista de itens para iterar pelo loop for.

Para frutas em maçã banana laranja do eco "eu gosto de $ fruit" feito
1234Para frutas na maçã bananeira orangedo eco "eu gosto de $ fruit" feito

Neste exemplo, estamos usando um loop for para iterar através de uma lista de itens - maçã, banana e laranja. O corpo do loop consiste em um único comando que imprime uma mensagem usando o valor da fruta variável de loop.

Exemplo 3: Looping através de arquivos em um diretório

Para loops podem ser usados ​​para iterar os arquivos e diretórios em bash. Aqui está um exemplo que mostra como usar um loop para processar todos os arquivos em um diretório:

para arquivo in/path/to/diretório/* do echo "Processamento $ arquivo" feito
1234para arquivo in/path/to/diretório/*do echo "Processamento $ arquivo" feito

Neste exemplo, estamos usando um loop for para iterar todos os arquivos em um diretório. O arquivo variável de loop é definido como o nome de cada arquivo por sua vez. O corpo do loop consiste em um único comando que imprime uma mensagem indicando que o arquivo está sendo processado.

Exemplo 4: aninhado para loops

Aninhado para loops pode ser usado para iterar em várias listas de itens. O loop externo percorre uma lista de itens, enquanto o loop interno passa por outra lista. Aqui está a sintaxe básica de um loop aninhado para Bash:

Para Item1 na List1, faça para o item2 na lista2 do comandos feitos feitos
1234567Para Item1 na List1DO para Item2 na Lista2 Do comandos donedone

Vejamos um exemplo que usa aninhados para loops para imprimir todas as combinações possíveis de duas letras:

pois eu em a… z fazer por j em a… z fazer echo "$ i $ j"
1234567para eu em a..z faça para j em a..z do eco "$ i $ j" Donedone

Neste exemplo, o loop externo percorre as letras A a Z, enquanto o loop interno também percorre as letras A a Z. O corpo do loop consiste em um único comando que concatena os valores atuais das variáveis ​​de loop i e j.

Exemplo 5: Usando matrizes com loops

Matrizes Bash podem ser usadas para loops para iterar uma lista de itens. Aqui está um exemplo que mostra como usar uma matriz com um loop:

frutas = (laranja de banana maçã) para frutas em "$ frutas [@]" do eco "eu gosto de $ fruit" feito
12345frutas = (laranja de banana maçã) para frutas em "$ frutas [@]" do eco "eu gosto de $ fruit" feito

Neste exemplo, estamos usando uma matriz chamada frutas que contém três itens - maçã, banana e laranja. O loop for itera sobre a matriz e a fruta variável de loop é definida para o valor de cada item na matriz por sua vez.

Conclusão

Neste tutorial, cobrimos os básicos e avançamos para os exemplos de loops em Bash. Mostramos como usar em loops para automatizar tarefas repetitivas, iterar por listas de itens e processar arquivos em um diretório. Pois loops são uma característica poderosa do Bash que pode ajudá -lo a economizar tempo e simplificar seu fluxo de trabalho. Com um pouco de prática, você pode começar a usar em loops para automatizar seu trabalho e facilitar sua vida.