Sintaxe:
- para declaração de loop:
afirmações
A primeira parte é usada para inicializar a variável para iniciar para ciclo. A segunda parte contém a condição de término para controlar a iteração do loop e o loop continuará até que a condição seja verdadeira. A última parte irá aumentar ou diminuir a variável de inicialização com base na primeira parte.
- declaração for-in
afirmações
para dentro loop é usado para fazer aquelas tarefas onde o número de iterações do loop não é fixo. para dentro loop é usado principalmente para analisar uma matriz ou lista de dados. O loop lê cada dado do array ou lista e armazena o valor em uma variável em cada iteração.
Exemplo-1: Usando um loop for simples
Um loop for simples é usado no seguinte script. Aqui, balcão variável é inicializada por 10 e o loop terminará quando o valor de balcão é menor que 5. O script irá imprimir o balcão valores de 10 a 5. Execute o comando do terminal.
$ echo | awk 'for (contador = 10; contador> = 5; contador--)imprimir "Running for", counter, "times."," \ n "; '
Resultado:
A seguinte saída aparecerá após a execução do comando.
Exemplo-2: usando o loop for-in para ler uma matriz
Uma matriz chamada Cliente é declarada no script a seguir, onde o cliente eu ia é definido como um índice de matriz e o cliente nome é definido como valor de matriz. para dentro loop é usado aqui para iterar cada índice da matriz e imprimir o nome do cliente. Execute o script do terminal.
$ echo | awk 'BEGIN Cliente ["4587"] = "Neil Johnson";Cliente ["8953"] = "Ella binte Nazir";
Cliente ["3455"] = "Bruce Hyslop";
Cliente ["6335"] = "Isabella";
END para (i no cliente)
imprimir "O nome de", i, "é", Cliente [i]
'
Resultado:
A seguinte saída aparecerá após a execução do script.
Exemplo-3: Uso de loop for aninhado
Quando um loop for é declarado em outro loop for, ele é chamado de loop for aninhado. O loop externo usado neste script irá iterar 2 vezes e o loop interno irá iterar 3 vezes. Portanto, a instrução de impressão será executada por, (2X3 = 6) 6 vezes. Execute o script do terminal.
$ echo | awk 'END para (i = 1; i<=2; i++)para (j = 1; j<=3; j++)
print "Iterando linha", i, "e coluna", j, "\ n"; '
Resultado:
A seguinte saída aparecerá após a execução do script.
Exemplo 4: Uso de loop for com instrução break
pausa declaração é usada em qualquer loop para encerrar o loop antes de atingir a condição de término com base na condição particular. No script a seguir, o loop for começará de 3 e terminará quando o valor de eu é maior que 20. Mas quando o valor de eu será igual à variável num então a condição if será verdadeira e o loop terminará para o pausa demonstração.
$ echo | awk 'BEGIN num = 7; END para (i = 3; i<=20; i++)if (i == num) quebra;
senão
print "Valor atual de i =", i, "\ n"; '
Resultado:
Aqui, se a condição for falsa por quatro iterações quando o valor de eu é 3,4,5 e 6. Portanto, a seguinte saída é impressa para as quatro iterações.
Exemplo 5: Usando o loop for com a instrução continue
A instrução Continue é usada em qualquer loop para omitir qualquer instrução com base em qualquer condição particular. Uma matriz chamada produtos é declarado no seguinte script. para dentro loop é usado para iterar a matriz e verificar cada valor com “Software de escritório“. Se o valor corresponder, uma mensagem indisponível será impressa, omitindo a mensagem disponível para continuar, caso contrário, a mensagem indisponível será impressa. Execute o script do terminal.
$ echo | awk 'BEGIN product ["1001"] = "Antivírus";produto ["1002"] = "Software de escritório";
produto ["1003"] = "Software de desenho";
produto ["1004"] = "HDD";
produto ["1005"] = "DVD"; FIM para (i no produto)
if (produto [i] == "Software de escritório")
imprimir produto [i], "não está disponível \ n";
Prosseguir;
imprimir produto [i], "está disponível", "\ n"; '
Resultado:
A seguinte saída aparecerá após a execução do script.
Exemplo-6: Uso de loop for em arquivo awk
Crie um arquivo de texto chamado vendas.TXT e adicione o seguinte conteúdo para praticar este exemplo.
vendas.TXT
2015 700002016 80000
2017 83000
2018 86000
2019 90000
Crie um arquivo awk chamado cal_sal.awk com o seguinte script para calcular o valor total de vendas do arquivo vendas.TXT. O segundo campo contém o valor das vendas anuais no arquivo vendas.TXT. No roteiro, as vendas array irá armazenar todos os valores do segundo campo e soma variável é inicializada com 0 para adicionar todos os valores de vendas variedade. Próximo, para dentro loop é usado para iterar cada elemento de as vendas array e adicione o valor com o soma variável. Por último, a instrução de impressão é usada para imprimir o valor de soma variável para exibir o valor total das vendas.
cal_sal.awk
vendas [i ++] = $ 2;
soma = 0;
FIM
para (i em vendas)
soma = soma + vendas [i];
imprimir "Valor total das vendas =" soma;
Execute o seguinte comando para executar o script de cal_sal.arquivo awk.
$ awk -f cal_sal.vendas awk.TXTResultado:
Existem 5 registros no vendas.TXT arquivo e a soma do valor das vendas é 409000 que é impresso após a execução do script.
Conclusão:
Diferentes usos do loop for no comando awk são tentados para explicar neste tutorial. Espero que o leitor tenha uma ideia clara sobre como usar o loop for no script awk e ser capaz de usar o loop for corretamente na programação awk.