Non catégorisé

Comment rejoindre et plusieurs colonnes dans le fichier de format CSV

Comment rejoindre et plusieurs colonnes dans le fichier de format CSV

Dans l'exemple ci-dessous, vous pouvez trouver quelques conseils sur la façon de rejoindre les colonnes de plusieurs fichiers vers un seul fichier de valeur séparée par virgule (CSV). Pour lire une colonne Formez un fichier multiple que nous pouvons utiliser pâte commande. Considérez un exemple suivant. Dans notre répertoire de sable, nous avons 3 fichiers où chacun contient une seule colonne de date:

$ LS F1 F2 F3 $ Cat F1 AZ DR QW RT ER $ CAT F2 IU DR GG HH JJ QQ EE UI $ CAT F3 QP DF 

Ensuite, nous pouvons les rejoindre ensemble en utilisant pâte:

$ Paste F1 F2 F3 AZ IU QP DR DR DF QW GG RT HH ER JJ QQ EE UI 

Par défaut, la commande paste utilisera LANGUETTE Pour séparer toutes les colonnes les unes des autres. Ce comportement peut être écrasé en utilisant -d option. Par exemple, au lieu d'un fichier délimité par onglet, nous créons un fichier délimité par virgule:

$ Paste -D, F1 F2 F3 AZ, IU, QP DR, DR, DF QW, GG, RT, HH, ER, JJ ,, QQ ,, EE ,, UI, 

Ok, c'était facile. Mais qu'en est-il de rejoindre une colonne sélectionnée à partir de plusieurs fichiers de colonnes? Considérez un suivant LANGUETTE les fichiers d'envoi de case délimités où chaque fichier contient plus d'une colonne:

$ ls f4 f5 f6 $ cat f4 qw mn qw ty ix ao pi er sy car 

L'utilisation d'une pâte sur tous les fichiers rejoindra toutes les colonnes en une seule sortie:

$ Paste F4 F5 F6 QW MN QW RK WP Tr er Wm Ty IX AO LP CY UT VB MQ PI EM SY WN EM RP EL ST 

Une fois que nous avons la sortie ci-dessus, nous pouvons utiliser couper ou awk Commandes pour sélectionner uniquement les colonnes qui nous intéressent. Dans l'exemple suivant, nous rejoindrons un deuxième et troisième à partir d'un F4 fichier, première colonne de F5 fichier et dernière colonne de F6 avec , En tant que délimiteur:

$ Paste F4 F5 F6 | awk 'begin ofs = "," print $ 2, $ 3, $ 4, 8 $' mn, qw, rk, wm ix, ao, lp, mq er, sy, wn, st 

Veuillez noter que vous pouvez spécifier les colonnes de sortie dans n'importe quel ordre, donc par exemple, il s'agit également d'une commande valide:

$ Paste F4 F5 F6 | awk 'begin ofs = "," print $ 4, 8 $, $ 2, $ 3' rk, wm, mn, qw lp, mq, ix, ao wn, st, er, sy, sy 

De même un couper commande avec une combinaison de tr Peut être utilisé pour rejoindre ou séparer plusieurs colonnes Formulaire Fichier CSV séparé de virgules Fichier CSV ou STDIN:

$ Paste F4 F5 F6 | tr '\ t ",' | cut -d, -f2,3,4,8 mn, qw, rk, wm ix, ao, lp, mq er, sy, wn, st 

. mes données.CSV:

$ Paste F4 F5 F6 | tr '\ t ",' | cut -d, -f2,3,4,8> mydata.CSV 
VFAT en majuscules incapable de créer un nom de répertoire
Dans cet article, traite d'un problème de nom de répertoire de création en maîtrise en maître sur le système de fichiers VFAT sur le système Linux....
Time votre téléchargement hors pointe avec la commande Linux
Tout le monde n'a pas un téléchargement Internet illimité. Parfois, Internet fournit des heures de pointe et hors pointe et à peine quelqu'un va-t-il ...
Page manuelle
Nom JOING - JOIN LIGNES DE DEUX Fichiers sur un champ commun Synopsis JOIN [OPTION]… FILE1 FILE2 Description Pour chaque paire de lignes d'entrée avec...