Menu

Traitement fichier avec SED, AWK ou autre. [Résolu]

pcsystemd 540 Messages postés dimanche 27 novembre 2005Date d'inscription 17 juillet 2018 Dernière intervention - 24 nov. 2017 à 10:47 - Dernière réponse :  pcsystemd
- 27 nov. 2017 à 08:18
Bonjour,

Mon fichier contient :

CHATEAU THIERRY              | 02400       | No     | Yes
CHATEAU THIERRY | 02400 | Yes | No

FONTENELLE EN BRIE | 02540 | Yes | No
MARCHAIS EN BRIE | 02540 | Yes | No
CHEZY SUR MARNE | 02570 | Yes | No
HARAMONT | 02600 | Yes | No
RETHEUIL | 02600 | Yes | No
VILLERS COTTERETS | 02600 | No | Yes
VILLERS COTTERETS | 02600 | Yes | No


Pour les lignes en doublon qui ont le même nom de ville et le même code postal, je souhaiterais supprimer une des lignes en doublon et pour celle qui reste, il faudrait ajouter Yes partout.

Exemple :

CHATEAU THIERRY | 02400 | Yes | Yes

FONTENELLE EN BRIE | 02540 | Yes | No
MARCHAIS EN BRIE | 02540 | Yes | No
CHEZY SUR MARNE | 02570 | Yes | No
HARAMONT | 02600 | Yes | No
RETHEUIL | 02600 | Yes | No
VILLERS COTTERETS | 02600 | Yes | Yes


C'est possible avec SED ou AWK ou autre?

Merci beaucoup



L'accès au savoir est la première liberté que chaque homme devrait avoir.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
dubcek 17448 Messages postés lundi 15 janvier 2007Date d'inscriptionContributeurStatut 19 août 2018 Dernière intervention - 24 nov. 2017 à 12:20
2
Merci
hello
$ awk 'BEGIN {FS=OFS="|"} {$3="Yes     "} !t[$1, $2]++' fichier
CHATEAU THIERRY | 02400 |Yes | Yes
FONTENELLE EN BRIE | 02540 |Yes | No
MARCHAIS EN BRIE | 02540 |Yes | No
CHEZY SUR MARNE | 02570 |Yes | No
HARAMONT | 02600 |Yes | No
RETHEUIL | 02600 |Yes | No
VILLERS COTTERETS | 02600 |Yes | Yes

Merci dubcek 2

Avec quelques mots c'est encore mieux Ajouter un commentaire

CCM a aidé 24597 internautes ce mois-ci

Commenter la réponse de dubcek
pcsystemd - 27 nov. 2017 à 08:18
0
Merci
Merci beaucoup dubcek.
Commenter la réponse de pcsystemd