Voilà mon besoin est tout simple mais sa résolution pas si simple :
- j’ai un fichier csv, fic1.csv, au format date,heure,id
- j’ai un 2nd fichier csv, fic2.csv, au format id, desc
Et je voudrais faire un peu comme en sql une jointure, c’est à dire avoir un nouveau fichier csv de la forme
date,heure,id, desc
A noter que fic1 fait des centaines de milliers de lignes, alors que fic2 a quelques dizaines de lignes.
Je voudrais faire la chose suivante dans un script shell :
- je charge fic2 dans un tableau associatif tab
- je passe tab comme parametre d’appel a awk
- awk parse fic1 et dès qu’il rencontre un id présent dans tab, il ajoute la description
J’aimerais pouvoir faire ça mais d’après mes premières recherches j’ai l’impression que ça n’est pas trop possible ou alors pas de cette manière.
A noter que j’ai tenté une autre façon de faire mais qui est très très lente :
dans awk j’ai créé une fonction qui dans un appel systeme fait un grep dans fic2, ça marche mais c’est lourd et surtout très lent.
Merci pour vos lumières.
Lomic