Linux vous fournit plusieurs utilitaires que vous pouvez utiliser pour traiter des fichiers texte. Que vous souhaitiez supprimer les données en double ou trier le contenu dans un fichier, les outils de ligne de commande Linux ont tout ce dont vous avez besoin.

Cet article montrera la commande de tri et comment vous pouvez l'utiliser pour trier le contenu dans un fichier texte et l'organiser en conséquence.

Quelle est la commande de tri ?

Comme mentionné ci-dessus, la commande de tri aide un utilisateur à organiser le contenu d'un fichier texte dans un ordre particulier. Plusieurs options sont disponibles qui vous permettent de trier le dossier selon votre souhait. Il s'agit d'un programme Linux standard qui peut trier un fichier texte par ordre alphabétique, numérique, par colonne, etc., dans l'ordre normal ou inverse.

D'autres fonctionnalités de la commande incluent l'ignorance de la casse des caractères lors du tri, le tri d'un fichier par mois, l'ignorance des blancs dans un fichier et le tri aléatoire. En utilisant le tri, vous pouvez également vérifier si un fichier est déjà trié ou non.

instagram viewer

Comment utiliser le tri sous Linux

Bien que le tri contienne plusieurs méthodes et indicateurs que vous pouvez utiliser, il reste facile à apprendre.

Syntaxe de base

La syntaxe de base de l'utilisation de sort est:

trier le nom de fichier

...où nom de fichier est le chemin absolu ou relatif du fichier texte que vous souhaitez trier.

Par défaut, le tri organisera le contenu selon les critères suivants:

  1. Les lignes commençant par des caractères numériques ont la priorité la plus élevée.
  2. La commande va trier les lignes par ordre alphabétique, après avoir trié les lignes commençant par des nombres.
  3. Les lignes commençant par des caractères minuscules précèdent les lignes commençant par le même caractère en majuscule.

Considérons un fichier texte nommé fichiertexte.txt contenant les informations suivantes:

Pour trier le fichier à l'aide de la configuration par défaut:

trier textfile.txt

Production:

Créer un nouveau fichier de sortie

La commande sort ne modifie pas le contenu du fichier. Il envoie simplement le contenu trié à la sortie standard. Cependant, cela ne signifie pas que le tri ne peut pas créer un nouveau fichier. Vous pouvez utiliser le -o flag pour spécifier le nom du fichier trié et tri créera automatiquement le fichier pour vous et ajoutera le contenu.

sort -o fichier trié nom de fichier

...où fichier trié est le nom du fichier de sortie et nom de fichier est le fichier d'origine qui doit être trié.

Trier fichiertexte.txt et créez un nouveau fichier de sortie pour le contenu:

sort -o trié.txt fichiertexte.txt

Production:

Trier plusieurs fichiers

Pour trier plusieurs fichiers à la fois, passez simplement les noms de fichiers séparés par le Espace personnage.

trier textfile.txt textfile2.txt

Production:

Notez que sort fusionnera la sortie des fichiers et les affichera ensemble dans le terminal.

Trier un fichier à l'envers

Si vous souhaitez inverser la disposition du contenu, utilisez le -r flag avec la commande par défaut. le -r dans la commande suivante signifie Sens inverse.

sort -r fichiertexte.txt

Production:

Trier un fichier numériquement

Pour trier un fichier contenant des données numériques, utilisez le -n flag avec la commande. Par défaut, le tri organisera les données dans l'ordre croissant.

trier -n nombres.txt

Production:

Si vous souhaitez trier par ordre décroissant, inversez l'ordre à l'aide de la -r option avec le -n drapeau dans la commande.

sort -rn nombres.txt

Production:

Ignorer la casse des caractères lors du tri

Par défaut, le tri prend en compte la casse des caractères du contenu. Les lignes commençant par des caractères minuscules précèdent les lignes commençant par la version majuscule du même caractère. Par exemple, « c'est un garçon » précédera « c'est un garçon ».

Si vous souhaitez que le tri ignore la casse des caractères, spécifiez le -F ou la --ignore-case drapeau comme suit:

sort -f fichiertexte.txt
trier --ignore-case textfile.txt

Production:

Trier un fichier en fonction du mois

En utilisant le -M flag, vous pouvez modifier l'ordre du contenu d'un fichier en fonction des noms de mois.

sort -M fichiertexte2.txt

Production:

Ignorer les blancs de début

Parfois, le fichier que vous souhaitez trier peut contenir des espaces ou des tabulations. Pour ignorer ces caractères vides, utilisez le -b drapeau.

sort -b fichierblanks.txt

Production:

Trier un fichier selon une colonne

Si vous avez un fichier texte avec des données organisées dans des colonnes séparées, vous pouvez trier le fichier en fonction du contenu d'une colonne. Tout ce que vous avez à faire est de passer le numéro de la colonne avec le -k drapeau.

Considérons un fichier texte contenant des informations de fichier avec différentes colonnes. Pour trier un fichier nommé sortie.txt selon la huitième colonne:

sort -k8 -rn sortie.txt

Production:

Tri des tuyaux avec d'autres commandes

Vous pouvez même utiliser sort avec d'autres commandes Linux pour modifier la disposition de la sortie. Par exemple, pour trier la sortie de la commande ls selon la taille des fichiers:

ls -la | trier -k5 -rn

Production:

Trier un fichier au hasard

Vous pouvez utiliser le -R flag si vous voulez randomiser l'ordre des lignes dans un fichier texte. Considérez le fichier fichiertexte.txt:

sort -R fichiertexte.txt

Production:

Trier les numéros de version dans un fichier

Si vous disposez d'un fichier texte contenant des informations de version associées à un package, vous pouvez trier son contenu en utilisant le -V ou alors --version-sort drapeau.

trier -V version.txt
sort --version-sort version.txt

Production:

Vérifier si un fichier est trié

le -c flag vous aidera à identifier les fichiers déjà triés selon les options spécifiées. Si le contenu du fichier est correctement trié, le tri n'affichera aucune sortie.

Pour vérifier si le fichier fichiertexte.txt est trié:

sort -c fichiertexte.txt

Maintenant, trions le fichier et enregistrons sa sortie dans un nouveau fichier nommé trié.txt. A l'émission de la commande suivante:

sort -c trié.txt

Production:

Vous pouvez également spécifier différents indicateurs pour vérifier l'agencement du fichier selon des critères particuliers. Par exemple, pour vérifier si le fichier nombres.txt est trié par ordre décroissant:

sort -c -rn nombres.txt

Vous verrez une sortie indiquant que le fichier n'est pas trié correctement. Trions le fichier et vérifions si le nouveau fichier réussit le test.

sort -o trié.txt -rn nombres.txt
sort -c -rn trié.txt

Production:

Trier le fichier et supprimer les doublons

Le fichier avec lequel vous travaillez peut contenir des données en double. Bien que vous puissiez utiliser la commande uniq pour supprimer ces informations du fichier, sort peut effectuer cette tâche pour vous. le -u ou alors --unique le drapeau est ce dont vous avez besoin.

Considérons un fichier nommé duplicate.txt:

Pour trier le fichier et supprimer les données répétées:

sort -u duplicate.txt

Production:

Vous pouvez voir que lorsque vous utilisez le -u flag, sort n'affiche que les lignes distinctes et les organise selon les critères spécifiés.

Travailler avec des fichiers texte sous Linux

Bien que la puissance des éditeurs de texte en ligne de commande soit incomparable, vous pouvez toujours opter pour un éditeur graphique tel que gedit pour modifier facilement le contenu d'un fichier texte. En outre, c'est un meilleur choix pour ceux qui débutent avec Linux et ne peuvent pas gérer le terminal.

La meilleure façon de commencer avec la ligne de commande, et Linux en général, est de commencer par pratiquer les commandes de base. Après avoir couvert les utilitaires fondamentaux, avancer progressivement vers des commandes plus complexes est probablement la meilleure approche.

E-mail
La feuille de triche de référence des commandes Linux

Cette simple aide-mémoire vous aidera à vous familiariser avec le terminal de ligne de commande Linux en un rien de temps.

Lire la suite

Rubriques connexes
  • Linux
  • Gestion de fichiers
  • Linux
  • Commandes Linux
A propos de l'auteur
Profonde Sharma (69 articles publiés)

Deepesh est l'éditeur junior pour Linux chez MUO. Il écrit du contenu informatif sur Internet depuis plus de 3 ans. Dans ses temps libres, il aime écrire, écouter de la musique et jouer de la guitare.

Plus de Deepesh Sharma

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

Un pas de plus…!

Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.

.