Si vous avez deux fichiers délimités (comme un fichier .csv) qui ont un champ commun entre eux, vous pouvez joindre les fichiers ensemble pour obtenir toutes les données pertinentes sur une seule ligne. Considérez ce processus comme la version de ligne de commande Linux / Unix d'un vlookup dans Microsoft Excel.[1] Il présente l'avantage d'être beaucoup plus flexible et capable de gérer des ensembles de données beaucoup plus importants.
Pas
-
1 Identifiez les deux fichiers que vous allez trier avant de les rejoindre. Par exemple:
- Un fichier
- Prénom: customer_info.csv
- Disposition: customer_number, name, favorite_store, email_address
- Fichier deux
- Prénom: customer_transactions.csv
- Disposition: customer_number, total_purchase_number, total_purchase_amount
- Un fichier
-
2 Triez les deux fichiers sur le champ que vous utiliserez pour joindre les fichiers. Dans ce cas, choisissez le champ correspondant à "customer_number" dans chaque fichier.
- $ sort -t, -k1,1 customer_info.csv> customer_info_sorted.csv
- $ sort -t, -k3,3 customer_transactions.csv> customer_transactions_sorted.csv
-
3 Joignez les deux fichiers triés ensemble.
- $ join -t, -1 1 -2 3 customer_info_sorted.csv customer_transactions_sorted.csv> customer_join.csv
Facebook
Twitter
Google+