La commande nl sous Linux : ajouter des numéros de ligne aux fichiers texte

Linux propose diverses commandes pour le formatage et l'édition de texte, et une commande particulièrement utile est la commande nl . Cet outil vous permet d'ajouter des numéros de ligne à chaque ligne d'un fichier texte ou d'une entrée, ce qui facilite la lecture et l'organisation du contenu.


Que fait la commande nl ?

La commande nl affiche le contenu d'un fichier texte avec numéros de ligne ajoutés par défaut aux lignes non vides. C'est particulièrement utile lorsque vous travaillez avec des scripts ou que vous examinez des fichiers volumineux, où le suivi des numéros de ligne est essentiel pour le débogage ou la modification.


Exemple : utilisation de la commande nl

Supposons que vous ayez un fichier nommé hello-world.sh contenant le script suivant :

#!/bin/bash
#
#This is a demo script that greets the world
#Author: Jose Navarro Varela
#Usage: ./hello-world.sh

clear
echo hello world
exit 0

Pour afficher le fichier avec des numéros de ligne, exécutez simplement :

nl hello-world.sh

Le résultat ressemblera à ceci :

     1 #!/bin/bash
     2 #
     3 #This is a demo script that greets the world
     4 #Author: Jose Navarro Varela
     5 #Usage: ./hello-world.sh
     6 clear
     7 echo hello world
     8 exit 0

Par défaut, la commande nl ne numérote que les lignes non vides.


Numéroter toutes les lignes (y compris les lignes vides)

Pour inclure les lignes vides dans la numérotation, utilisez l'option -b a :

nl -b a hello-world.sh

Le résultat ressemblera à ceci :

     1 #!/bin/bash
     2 #
     3 #This is a demo script that greets the world
     4 #Author: Jose Navarro Varela
     5 #Usage: ./hello-world.sh
     6
     7 clear
     8 echo hello world
     9 exit 0

Ajouter un séparateur personnalisé

La commande nl vous permet de personnaliser le séparateur entre les numéros de ligne et le texte en utilisant l'option -s . Par exemple, pour ajouter ... comme séparateur :

nl -s "..." hello-world.sh

Le résultat ressemblera à ceci :

1...#!/bin/bash
2...#
3...#This is a demo script that greets the world
4...#Author: Jose Navarro Varela
5...#Usage: ./hello-world.sh
6...
7...clear
8...echo hello world
9...exit 0

Options supplémentaires

La commande nl offre davantage d'options de personnalisation, comme :

  • -w: Définit la largeur du champ du numéro de ligne.
  • -n: Définit le format de numérotation (aligné à droite, aligné à gauche ou rempli avec des zéros).

Vous pouvez explorer toutes les options disponibles en consultant la page de manuel avec :

man nl

Scénarios courants d'utilisation de la commande nl

La commande nl est largement utilisée dans diverses situations. Voici quelques-uns des scénarios les plus courants :

1. Déboguer des scripts shell

Lors du débogage d'un script shell, vous devrez peut-être vous référer à des lignes spécifiques où des erreurs se produisent. L'utilisation de la commande nl pour ajouter des numéros de ligne facilite la localisation des lignes problématiques.

Exemple :

nl my-script.sh

2. Préparer de la documentation ou des revues de code

Lorsque vous partagez des scripts ou des extraits de code pour révision, l'ajout de numéros de ligne rend le contenu plus lisible et plus facile à référencer pendant les discussions.

Exemple :

nl config.conf > numbered-config.conf

3. Examiner de gros fichiers texte

Lorsque vous travaillez avec de gros fichiers journaux, de configuration ou de données, l'ajout de numéros de ligne aide à naviguer et à référencer des sections spécifiques.

Exemple :

nl /var/log/syslog

4. Comparer des fichiers avec des numéros de ligne

L'ajout de numéros de ligne aux fichiers avant de les comparer facilite l'identification des différences.

Exemple :

nl file1.txt > numbered-file1.txt
nl file2.txt > numbered-file2.txt
diff numbered-file1.txt numbered-file2.txt

5. Formater la sortie pour des rapports

La commande nl peut être utilisée pour formater des fichiers texte pour des rapports ou des présentations où des lignes numérotées sont nécessaires pour plus de clarté.

Exemple :

nl report.txt > numbered-report.txt

6. Afficher des scripts avec des numéros de ligne pour les lignes vides

Parfois, les scripts contiennent des lignes vides qui sont importantes pour la lisibilité. Vous pouvez utiliser l'option -b a pour numéroter toutes les lignes, y compris les vides.

Exemple :

nl -b a script.sh

7. Personnaliser les numéros de ligne pour des formats spécifiques

Lorsque vous présentez des fichiers texte numérotés, vous aurez peut-être besoin de séparateurs ou de formats personnalisés.

Exemple :

nl -s " -> " textfile.txt

Pourquoi utiliser la commande nl ?

La commande nl est un outil simple mais puissant pour :

  • Déboguer des scripts en identifiant des lignes spécifiques.
  • Ajouter des numéros de ligne aux fichiers texte pour une navigation plus facile.
  • Préparer des sorties formatées pour la documentation ou le partage.

Laisser un commentaire