Trier lignes en doublon dans un fichier.
Résolu
pcsystemd
Messages postés
702
Date d'inscription
Statut
Membre
Dernière intervention
-
pcsystemd Messages postés 702 Date d'inscription Statut Membre Dernière intervention -
pcsystemd Messages postés 702 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaiterais pourvoir trier les lignes en doublon dans un fichier. Le trie doit se faire sur les champs 1,4,5 et 6 en excluant les champ 2 et 3. Le séparateur de champ est le pipe "|"
Dans cet exemple je souhaiterais conserver qu'une seule des lignes sans tenir compte du champ 2 et 3.
Je ne vois rien dans les man de SORT et UNIQ ui me permette cela.
Avez vous une idée?
Merci
L'accès au savoir est la première liberté que chaque homme devrait avoir.
Je souhaiterais pourvoir trier les lignes en doublon dans un fichier. Le trie doit se faire sur les champs 1,4,5 et 6 en excluant les champ 2 et 3. Le séparateur de champ est le pipe "|"
Dans cet exemple je souhaiterais conserver qu'une seule des lignes sans tenir compte du champ 2 et 3.
o.toto@mail.com|1111073|2012-11-12 15:38:08|0006TH|Zut|TOTO o.toto@mail.com|1111685|2012-11-12 19:12:02|0006TH|Zut|TOTO
Je ne vois rien dans les man de SORT et UNIQ ui me permette cela.
Avez vous une idée?
Merci
L'accès au savoir est la première liberté que chaque homme devrait avoir.
A voir également:
- Trier lignes en doublon dans un fichier.
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Trier un tableau excel - Guide
- Fichier rar - Guide
4 réponses
hello
$ cat a1 o.toto@mail.com|1111073|2012-11-12 15:38:08|0006TH|Zut|TOTO o.toto@mail.com|1111685|2012-11-12 19:12:02|0006TH|Zut|TOTO $ $ awk -F '|' '! x[$1, $4, $5, $6]++ ' a1 o.toto@mail.com|1111073|2012-11-12 15:38:08|0006TH|Zut|TOTO $
Merci énormément dubceck .
Si je peux abuser de votre temps, pourriez vous m'expliquer votre commande car j'aimerais comprendre surtout le
Merci encore
Si je peux abuser de votre temps, pourriez vous m'expliquer votre commande car j'aimerais comprendre surtout le
'! x[$1, $4, $5, $6]++ '
Merci encore
On incremente (++) un tableau x indexé par les champs 1,4,5 et 6 du fichier.
si cette location est nulle (d'où le !) on imprime la ligne (en absence de code entre {}, l'action par défaut est print $0)
donc si x[$1, $4, $5, $6] n'est pas nul, il y a deja eu une ligne identique et on ne l'imprime pas.
si cette location est nulle (d'où le !) on imprime la ligne (en absence de code entre {}, l'action par défaut est print $0)
donc si x[$1, $4, $5, $6] n'est pas nul, il y a deja eu une ligne identique et on ne l'imprime pas.