1. Apprendre
  2. /
  3. Cours
  4. /
  5. Introduction à l'invite de commande

Connected

Exercice

Comment puis-je faire plusieurs choses dans une seule boucle?

Les boucles que vous avez vues jusqu'ici n'ont qu'une seule commande ou qu'un seul tuyau (pipeline) dans leur corps, mais une boucle peut contenir autant de commandes que nécessaire. Pour indiquer au shell où une commande se termine et où la suivante commence, vous devez les séparer par des points-virgules :

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

Supposons que vous oubliiez le point-virgule entre les commandes echo et head dans la boucle précédente, et que vous demandiez donc au shell d'exécuter :

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

Que fera le shell?

Instructions

50 XP

Réponses possibles