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

Connected

Exercice

Comment écrire des boucles dans un script Shell ?

Les scripts Shell peuvent aussi contenir des boucles. Vous pouvez les écrire sur une seule ligne avec des points-virgules, ou les répartir sur plusieurs lignes sans points-virgules pour rendre le tout plus lisible :

# Print the first and last data records of each file.
for filename in $@
 do
     head -n 2 $filename | tail -n 1
     tail -n 1 $filename
 done

(Il n'est pas obligatoire d'indenter les commandes à l'intérieur de la boucle, mais le faire rend le code plus clair.)

La première ligne de ce script est un commentaire qui explique ce que fait le script. Les commentaires commencent par le caractère # et s'étendent jusqu'à la fin de la ligne. Votre vous du futur vous remerciera d'ajouter de brèves explications comme celle-ci à chaque script que vous écrivez.

En rappel, pour enregistrer ce que vous avez écrit dans Nano, tapez Ctrl + O pour enregistrer le fichier, puis Entrée pour confirmer le nom de fichier, puis Ctrl + X pour quitter l'éditeur.

Instructions 1/3

undefined XP
  • 1

    Remplissez les espaces réservés dans le script date-range.sh avec $filename (deux fois), head et tail afin qu'il affiche la première et la dernière date d'un ou de plusieurs fichiers.

  • 2

    Exécutez date-range.sh sur les quatre fichiers de données saisonnières en utilisant seasonal/*.csv pour faire correspondre leurs noms.

  • 3

    Exécutez date-range.sh sur les quatre fichiers de données saisonnières en utilisant seasonal/*.csv pour faire correspondre leurs noms, et redirigez sa sortie par un tuyau vers sort pour voir que vos scripts peuvent être utilisés comme les commandes intégrées d'Unix.