Ticker

6/recent/ticker-posts

Ad Code

Responsive Advertisement

La commande join Linux : utilisations et exemples

Sur les systèmes d'exploitation de type Unix, la commande join rejoint les lignes de deux fichiers partageant un champ commun de données.

Ce tutoriel couvre la version GNU / Linux de Join, elle vous guide pour utiliser la commande join avec des exemples.

La commande join Linux : utilisations et exemples

Comment utiliser la commande join

Voici la syntaxe de la commande join :

join [OPTION]... FICHIER1 FICHIER2

Pour chaque paire de lignes d'entrée avec des champs de jointure identiques, elle écrit une ligne à la sortie standard.
Le champ de jointure par défaut est le premier, délimité par "Whitespace" (espace blanc). Lorsque Fichier1 ou Fichier2 (pas les deux) est -, cela lit l'entrée standard.

Sauf si l'option -t Char est donnée, les champs sont séparés par des espaces vides principaux; Sinon, les champs sont séparés par Char. Tout champ est un numéro de terrain compté de 1.

FICHIER1 et FICHIER2 doivent être triés dans les champs de jointure. La commande sort peut accomplir cela. Si l'entrée n'est pas triée et que certaines lignes ne peuvent pas être jointes, un message d'avertissement sera donné.

Les options de la commande :

-a FILENUM Imprimez des lignes non attrayantes à partir du fichier FILENUM, où le FILENUM est 1 ou 2, correspondant à FILE1 ou à FILE2
-e EMPTY Remplacez les champs d'entrée manquants avec vide
-i--ignore-case Ignorer les différences en cas de comparaison de champs
-j FIELD Équivalent à "-1 champ -2 champ"
-o FORMAT Obéir au format tout en construisant une ligne de sortie
-t CHAR Utilisez Char comme séparateur de champ d'entrée et de sortie
-v FILENUM Comme -a FILENUM, mais supprimer des lignes de sortie jointes
-1 FIELD Inscrivez-vous sur ce champ de fichier 1
-2 FIELD Inscrivez-vous sur ce champ de fichier 2.
--check-order Vérifiez que l'entrée est correctement triée, même si toutes les lignes d'entrée sont couples.
--nocheck-order Ne vérifiez pas que l'entrée est correctement triée.
--header Traitez la première ligne dans chaque fichier sous forme d'en-têtes de champ, imprimez-les sans essayer de les coupler.
--help Affichez un message d'aide et quittez.
--version Afficher les informations de version et sortie.
Les options de la commande join

La commande join Linux : utilisations et exemples

Utilisation basique

Voici l'utilisation basique de la commande join.
Prenons le fichier pays.txt :

1 Inde
2 US
3 Irlande
4 UK
5 Canada

Et le fichier capitales.txt :

1 NewDelhi
2 Washington
3 Dublin
4 London
5 Toronto

Pour joindre les deux fichiers, on utilise la commande join de cette manière :

join pays.txt capitales.txt

On obtient alors la sortie suivante :

1 Inde NewDelhi
2 US Washington
3 Irlande Dublin
4 UK London
5 Canada Toronto

Si vous souhaitez rediriger le résultat vers un nouveau fichier, utilisez le caractère > et spécifier le nom du fichier.
Par exemple pour rediriger le résultat vers pays-capitales.txt :

join pays.txt capitales.txt > pays-capitales.txt

Utiliser la commande join avec la commande sort

Comme expliqué en introduction, pour joindre deux fichiers, ces derniers doivent être triés sinon un avertissement s'affiche.
Mais il est possible d'utiliser join pour joindre des fichiers non triés grâce à la commande sort.

Disons que vous avez deux fichiers, fichier1.txt et fichier2.txt.

fichier1.txt contient le texte suivant :

3 tomate
1 oignon
4 betteraves
2 poivre

fichier2.txt contient le texte suivant :

4 orange
3 pomme
1 mangue
2 pamplemousse

Si vous souhaitez trier ces deux fichiers et les rejoindre, vous pouvez tout faire en une seule commande si vous utilisez la coque de la commande Bash, comme ceci :

join <(sort fichier1.txt) <(sort fichier2.txt)

Ici, les commandes sort entre parenthèses sont toutes exécutées et leur sortie est redirigée vers la commande join, qui prend sa production comme entrée standard pour ses premier et second arguments; La commande join assemble le contenu trié des deux fichiers et donne des résultats similaires aux résultats ci-dessous.

join <(sort fichier1.txt) <(sort fichier2.txt)
1 oignon mangue
2 poivre pamplemousse
3 tomate pomme
4 betteraves orange

L’article La commande join Linux : utilisations et exemples est apparu en premier sur malekal.com.

Enregistrer un commentaire

0 Commentaires