Stations de travail en ligne OnWorks Linux et Windows

Logo

Hébergement gratuit en ligne pour les postes de travail

<Précédent | Table des matières | Suivant>

Lecture de fichiers avec des boucles

tandis que et jusqu'à peut traiter l'entrée standard. Cela permet aux fichiers d'être traités avec les boucles while et until. Dans l'exemple suivant, nous afficherons le contenu du fichier distros.txt utilisé dans les chapitres précédents :


#! / Bin / bash

# while-read : lit les lignes d'un fichier lors de la lecture de la version de distribution ; faire

printf "Distro : %s\tVersion : %s\tPublié : %s\n" \

$distribution \

$ version \

$libération terminée < distributions.txt

#! / Bin / bash

# while-read : lit les lignes d'un fichier lors de la lecture de la version de distribution ; faire

printf "Distro : %s\tVersion : %s\tPublié : %s\n" \

$distribution \

$ version \

$libération terminée < distributions.txt


Pour rediriger un fichier vers la boucle, nous plaçons l'opérateur de redirection après le fait déclaration. La boucle utilisera lire pour saisir les champs du fichier redirigé. Les lire La commande se terminera après la lecture de chaque ligne, avec un état de sortie de zéro jusqu'à ce que la fin du fichier soit atteinte. À ce stade, il sortira avec un état de sortie différent de zéro, mettant ainsi fin à la boucle. Il est également possible de rediriger l'entrée standard dans une boucle :



#! / Bin / bash


# while-read2 : lit les lignes d'un fichier

sort -k 1,1 -k 2n distributions.txt | lors de la lecture de la version de distribution ; do printf "Distro : %s\tVersion : %s\tPublié : %s\n" \

$distribution \

$ version \

$libération

fait

#! / Bin / bash


# while-read2 : lit les lignes d'un fichier

sort -k 1,1 -k 2n distributions.txt | lors de la lecture de la version de distribution ; do printf "Distro : %s\tVersion : %s\tPublié : %s\n" \

$distribution \

$ version \

$libération

fait


Ici, nous prenons la sortie du sort commande et afficher le flux de texte. Cependant, il est important de se rappeler que puisqu'un tube exécutera la boucle dans un sous-shell, toutes les variables créées ou affectées dans la boucle seront perdues à la fin de la boucle.


Meilleur système d'exploitation Cloud Computing chez OnWorks :