14 Exemples utiles de la commande Linux 'Sort' - Partie 1

14 Exemples utiles de la commande Linux 'Sort' - Partie 1

Le tri est un programme Linux utilisé pour l'impression de lignes de fichiers de texte d'entrée et la concaténation de tous les fichiers dans l'ordre trié. La commande de tri prend un espace vide comme séparateur de champ et le fichier d'entrée entier comme clé de tri. Il est important de remarquer que la commande de tri ne trie pas réellement les fichiers mais impriment uniquement la sortie triée, jusqu'à ce que vous redirigez la sortie.

Cet article vise une profonde perspicacité de Linux 'trier`` Commande avec 14 exemples pratiques utiles qui vous montreront comment utiliser la commande de tri dans Linux.

1. Nous allons d'abord créer un fichier texte (Tecmint.SMS) éxécuter 'trier'Exemples de commande. Notre répertoire de travail est '/ Home / $ User / Desktop / Tecmint.

L'option '-e'Dans la commande ci-dessous, permet l'interprétation de la barre arrière et / n raconte écho Pour écrire chaque chaîne sur une nouvelle ligne.

$ echo -e "Computer \ nmouse \ nlaptop \ ndata \ nredhat \ nlaptop \ ndebian \ nlaptop"> tecmint.SMS 

2. Avant de commencer par 'trier'Jetons un aperçu du contenu du fichier et de son apparence.

$ Cat Tecmint.SMS 

3. Triez maintenant le contenu du fichier à l'aide de la commande suivante.

$ Trie Tecmint.SMS 

Note: La commande ci-dessus ne trie pas réellement le contenu du fichier texte mais affiche uniquement la sortie triée sur le terminal.

4. Trier le contenu du fichier 'Tecmint.SMS'et l'écrivez-le dans un fichier appelé (trié.SMS) et vérifier le contenu en utilisant la commande CAT.

$ Trie Tecmint.txt> trié.txt $ chat trié.SMS 

5. Triez maintenant le contenu du fichier texte 'Tecmint.SMS«Dans l'ordre inverse en utilisant»-r«Commutation et redirigez la sortie vers un fichier»reversé.SMS'. Vérifiez également la liste de contenu du fichier nouvellement créé.

$ Soi -r Tecmint.txt> inverse.txt $ Cat réversion.SMS 

6. Nous allons créer un nouveau fichier (LSL.SMS) au même endroit pour des exemples détaillés et le remplir en utilisant la sortie de 'ls -l'Pour votre répertoire domestique.

$ ls -l / home / $ utilisateur> / home / $ utilisateur / bureau / tecmint / lsl.txt $ cat lsl.SMS 

Va maintenant des exemples pour trier le contenu sur la base d'un autre champ et non des caractères initiaux par défaut.

7. Trier le contenu du fichier 'LSL.SMS' sur la base de 2e colonne (qui représente le nombre de liens symboliques).

$ Soi -nk2 lsl.SMS 

Note: Le '-n'Option dans l'exemple ci-dessus trier le contenu numériquement. Option '-n'doit être utilisé lorsque nous voulions trier un fichier sur la base d'une colonne qui contient des valeurs numériques.

8. Trier le contenu du fichier 'LSL.SMS' sur la base de 9e colonne (qui est le nom des fichiers et des dossiers et non numerique).

$ Soi -K9 LSL.SMS 

9. Il n'est pas toujours essentiel d'exécuter la commande de tri sur un fichier. Nous pouvons le piperline directement sur le terminal avec une commande réelle.

$ ls -l / home / $ utilisateur | tri -nk5 

dix. Trier et supprimer des doublons du fichier texte Tecmint.SMS. Vérifiez si le double a été supprimé ou non.

$ Cat Tecmint.txt $ tri -u tecmint.SMS 

Règles jusqu'à présent (ce que nous avons observé):

  1. Les lignes commençant par des nombres sont préférées dans la liste et se trouve en haut jusqu'à ce que ce soit autrement spécifié (-r).
  2. Les lignes commençant par des lettres minuscules sont préférées dans la liste et se trouve en haut jusqu'à ce que ce soit autrement spécifié (-r).
  3. Le contenu est répertorié sur la base de l'occurrence d'alphabets dans le dictionnaire jusqu'à ce qu'il soit autrement spécifié (-r).
  4. Trier la commande par défaut Traitez chaque ligne comme une chaîne, puis triez-la en fonction de l'occurrence du dictionnaire d'alphabets (Numeric Ared; voir la règle - 1) jusqu'à ce que ce soit autrement spécifié.

11. Créer un troisième fichier 'LSLA.SMS«À l'emplacement actuel et remplissez-le avec la sortie de»LS -LA' commande.

$ ls -la / home / $ utilisateur> / home / $ utilisateur / bourse / tecmint / lsla.txt $ cat lsla.SMS 

Ceux qui ont la compréhension de 'LS'Command sait que'ls -la '=' ls -l' + Caché des dossiers. Ainsi, la plupart du contenu de ces deux fichiers serait le même.

12. Trier le contenu de deux fichiers sur la sortie standard en une seule fois.

$ Trie lsl.TXT LSLA.SMS 

Remarquez la répétition des fichiers et des dossiers.

13. Maintenant, nous pouvons voir comment trier, fusionner et supprimer des doublons de ces deux fichiers.

$ Soi -U lsl.TXT LSLA.SMS 

Remarquez que les doublons ont été omis de la sortie. Vous pouvez également écrire la sortie dans un nouveau fichier en redirigeant la sortie vers un fichier.

14.
Nous pouvons également trier le contenu d'un fichier ou la sortie en fonction de plusieurs colonnes. Trier la sortie de 'ls -l«Commande sur la base du champ 2,5 (numérique) et 9 (non nucérique).

$ ls -l / home / $ utilisateur | Trier -t "," -nk2,5 -k9 

C'est tout pour le moment. Dans le prochain article, nous couvrirons quelques autres exemples de 'trier'Commande en détail pour vous. Jusque-là, restez à l'écoute et connecté à Tecmint. Continuez à partager. Continuez à commenter. Aimez-nous et partagez-nous et aidez-nous à nous propager.

Lisez également: 7 Exemples de commande «tri» Linux intéressants - Partie 2