ComeçarComece gratuitamente

Como posso fazer várias coisas em um único loop?

Todos os loops que você viu até agora têm um único comando ou pipeline no corpo, mas um loop pode conter qualquer número de comandos. Para dizer ao shell onde um termina e o outra começa, você deve separá-los com ponto e vírgula:

for f in seasonal/*.csv; do echo $f; head -n 2 $f | tail -n 1; done
seasonal/autumn.csv
2017-01-05,canine
seasonal/spring.csv
2017-01-25,wisdom
seasonal/summer.csv
2017-01-11,canine
seasonal/winter.csv
2017-01-03,bicuspid

Suponha que você tenha esquecido o ponto e vírgula entre os comandos echo e head no loop anterior, e pedisse para o shell executar:

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

O que o shell faria?

Este exercício faz parte do curso

Introdução ao Shell

Ver Curso

Exercício interativo prático

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

Comece o exercício