Bash:
Lecture d'un fichier texte

How to:

Voici différentes manières de lire un fichier en Bash:

# Utiliser 'cat' pour afficher le contenu d'un fichier
cat monfichier.txt

# Lire ligne par ligne avec une boucle 'while' et 'read'
while IFS= read -r line; do
    echo "Ligne : $line"
done < monfichier.txt

Sample output pour la boucle while:

Ligne : Première ligne de mon fichier
Ligne : Deuxième ligne
Ligne : Etc...

Deep Dive

Historiquement, cat (concatenate) était souvent utilisé pour afficher le contenu d’un fichier sur l’écran. Mais en Bash, la boucle while read offre plus de contrôle et est plus adaptée pour traiter des fichiers ligne par ligne, surtout avec des fichiers volumineux. Alternativement, awk et sed sont puissants pour la manipulation de texte, mais sont plus complexes.

La commande cat est simple et directe, mais si votre fichier est trop grand, vous gaspillez de la mémoire et du temps. “while IFS= read -r line” est lisible, sécuritaire (avec -r pas d’interprétation des backslashes) et facile à manipuler ligne par ligne.

IFS (Internal Field Separator) est utilisé ici pour préserver les espaces en début de ligne, chose que cat fera automatiquement, mais pas read. C’est fondamental pour la fiabilité du script.

See Also