Comment trier des fichiers texte sous Linux à l’aide de la commande sort

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

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

Qu’est-ce que la commande sort ?

Comme mentionné ci-dessus, la commande sort aide un utilisateur à organiser le contenu d’un fichier texte dans un ordre particulier. Plusieurs options sont disponibles qui vous permettent de trier le fichier 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.

Les 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.

Comment utiliser le tri sous Linux

Bien que sort contienne plusieurs méthodes et drapeaux que vous pouvez utiliser, il reste facile à apprendre.

Syntaxe de base

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

…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 triera les lignes par ordre alphabétique, après avoir trié les lignes commençant par des chiffres.
  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.

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

Voir aussi :  Tout ce que vous devez savoir sur BlackArch Linux

Pour trier le fichier en utilisant la configuration par défaut :

Sortir:

trier un fichier texte à l'aide de sort

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 ce tri ne peut pas créer un nouveau fichier. Vous pouvez utiliser le -o flag pour spécifier le nom du fichier trié et sort créera automatiquement le fichier pour vous et ajoutera le contenu.

…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 :

Sortir:

envoyer la sortie dans un nouveau fichier

Trier plusieurs fichiers

Pour trier plus d’un fichier à la fois, passez simplement les noms de fichiers séparés par le Espace personnage.

Sortir:

trier plusieurs fichiers à l'aide de sort

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

Inverser le tri d’un fichier

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

Sortir:

trier les fichiers dans l'ordre inverse

Trier un fichier numériquement

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

Sortir:

fichier de tri avec des nombres sous Linux

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

Sortir:

tri inverse d'un fichier avec des nombres

Ignorer la casse des caractères lors du tri

Par défaut, le tri tient compte de 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 ».

Voir aussi :  Comment réinitialiser rapidement un mot de passe oublié sur Ubuntu

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

Sortir:

trier des fichiers sous Linux

Trier un fichier en fonction du mois

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

Sortir:

trier les fichiers en fonction des noms de mois

Ignorer les blancs en tête

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

Sortir:

ignorer les blancs lors du tri sous Linux

Trier un fichier selon une colonne

Si vous avez un fichier texte avec des données disposé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 colonne avec le -k drapeau.

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

Sortir:

trier selon les valeurs des colonnes

Tri de 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 en fonction de la taille des fichiers :

Sortir:

tri par tuyauterie avec d'autres commandes

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 dossier fichiertexte.txt :

affichage d'un fichier texte avec cat

Sortir:

trier les fichiers au hasard

Trier les numéros de version dans un fichier

Si vous avez un fichier texte contenant des informations de version associées à un paquet, vous pouvez trier son contenu à l’aide de la -V ou –version-tri drapeau.

Sortir:

tri des données de version avec sort

Vérifier si un fichier est trié

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

Voir aussi :  Les 10 meilleurs outils gratuits de pare-feu Linux

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

Maintenant, trions le fichier et enregistrons sa sortie dans un nouveau fichier nommé trié.txt . En émettant la commande suivante :

Sortir:

vérifier les fichiers avec sort sous linux

Vous pouvez également spécifier divers drapeaux pour vérifier l’organisation du fichier en fonction de critères particuliers. Par exemple, pour vérifier si le fichier nombres.txt est trié par ordre décroissant :

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

Sortir:

vérifier un fichier avec des numéros

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 –unique le drapeau est ce dont vous avez besoin.

Prenons un fichier nommé dupliquer.txt :

fichier avec des données répétitives

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

Sortir:

supprimer les données en double de la sortie

Vous pouvez voir que lorsque vous utilisez le -u flag, sort n’affiche que des 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 inégalée, 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écouvrent 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 pratiquer d’abord les commandes de base. Après avoir couvert les utilitaires fondamentaux, avancer progressivement vers des commandes plus complexes est probablement la meilleure approche.

Cliquez pour évaluer cet article !
[Total: Moyenne : ]

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *