ComeçarComece de graça

Como posso executar vários comandos em um único loop?

Imprimir nomes de arquivos é útil para depuração, mas o verdadeiro objetivo dos loops é fazer coisas com vários arquivos. Esse loop imprime a segunda linha de cada arquivo de dados:

for file in seasonal/*.csv; do head -n 2 $file | tail -n 1; done

Ele tem a mesma estrutura dos outros loops que você já viu: a única diferença é que o corpo é um pipeline de dois comandos em vez de um único comando.

Este exercício faz parte do curso

Introdução ao Shell

Ver curso

Instruções do exercício

Escreva um loop que imprima a última entrada de julho de 2017 (2017-07) em cada arquivo sazonal. Ele deve produzir um resultado semelhante a:

grep 2017-07 seasonal/winter.csv | tail -n 1

mas para cada arquivo sazonal separadamente. Use file como o nome da variável de loop e lembre-se de percorrer a lista de arquivos seasonal/*.csv (em vez de 'seasonal/winter.csv', como no exemplo).

Exercício interativo prático

Transforme a teoria em ação com um de nossos exercícios interativos

Começar o exercício