[CH GOUROU en BASH] Traitement fichiers texte
8 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
[CH GOUROU en BASH] Traitement fichiers texte
Salut
Je m'arrache les cheveux depuis des jours sur un problème. Le voici exposé :
Je dispose de 2 texte fichiers triés (de plusieurs méga-octets chacun) :
- le premier (fichier1) est formé comme suit :
A---A
A-ACONSTRUCTION
AABATEAUX
BARTIO
BOULE
BOWLINGCOOL
CDRTPO
- le deuxième (fichier2) est en fait une liste de mots communs, formé comme suit :
ALBATROS
AN
BATEAUX
BOULE
BOWLING
CONSTRUCTION
COOPP
COPIE
Ce que je veux faire :
Récupérer toutes les lignes du fichier1 dont au moins une occurrence est présente dans le fichier2. Dans mon exemple, on aurait donc ceci en sortie (fichier3) :
A-ACONSTRUCTION
AABATEAUX
BOULE
BOWLINGCOOL
Ce traitement doit se faire en bash sous unix.
J'ai déjà tenté de boucler sur chacun des mots du fichier2 et de vérifier grâce à un grep si le mot est présent dans le fichier1, toutefois au vu de la taille des fichiers, une telle solution n'est pas satisfaisante, le traitement est extrêmement long. J'ai besoin de faire çà beaucoup plus rapidement.
J'ai songé à utiliser des outils puissants comme join,diff ou comm mais rien de bon n'est sorti de mon cerveau ...
J'ai pensé faire une jointure mot à mot et récupérer le résultat mais je ne parviens pas à mettre çà en oeuvre ...
Merci pour l'aide que vous pourrez m'apporter !
Je m'arrache les cheveux depuis des jours sur un problème. Le voici exposé :
Je dispose de 2 texte fichiers triés (de plusieurs méga-octets chacun) :
- le premier (fichier1) est formé comme suit :
A---A
A-ACONSTRUCTION
AABATEAUX
BARTIO
BOULE
BOWLINGCOOL
CDRTPO
- le deuxième (fichier2) est en fait une liste de mots communs, formé comme suit :
ALBATROS
AN
BATEAUX
BOULE
BOWLING
CONSTRUCTION
COOPP
COPIE
Ce que je veux faire :
Récupérer toutes les lignes du fichier1 dont au moins une occurrence est présente dans le fichier2. Dans mon exemple, on aurait donc ceci en sortie (fichier3) :
A-ACONSTRUCTION
AABATEAUX
BOULE
BOWLINGCOOL
Ce traitement doit se faire en bash sous unix.
J'ai déjà tenté de boucler sur chacun des mots du fichier2 et de vérifier grâce à un grep si le mot est présent dans le fichier1, toutefois au vu de la taille des fichiers, une telle solution n'est pas satisfaisante, le traitement est extrêmement long. J'ai besoin de faire çà beaucoup plus rapidement.
J'ai songé à utiliser des outils puissants comme join,diff ou comm mais rien de bon n'est sorti de mon cerveau ...
J'ai pensé faire une jointure mot à mot et récupérer le résultat mais je ne parviens pas à mettre çà en oeuvre ...
Merci pour l'aide que vous pourrez m'apporter !
Dernière édition par yonni le Jeu Nov 27, 2008 12:23, édité 1 fois.
-

Topsitemaker - WRInaute impliqué

- Messages: 373
- Inscription: Dim Nov 19, 2006 0:47
Bonjour,
Tu mets tes 2 fichiers dans 2 tables distincts dans une base de données après tu fais un select avec un left join.
Bonne chance
Tu mets tes 2 fichiers dans 2 tables distincts dans une base de données après tu fais un select avec un left join.
Bonne chance
j'ai fait un ptit truc vite fait
Avec fichier 1 :
Fichier 2 :
Le résultat du script :
Ronan
- Code: Tout sélectionner
for line in $(cat fichier2)
do cat fichier1 | grep "$line"
done
Avec fichier 1 :
A---A
A-ACONSTRUCTION
AABATEAUX
BARTIO
BOULE
BOWLINGCOOL
CDRTPO
Fichier 2 :
ALBATROS
AN
BATEAUX
BOULE
BOWLING
CONSTRUCTION
COOPP
COPIE
Le résultat du script :
ron@ron-desktop:~/Desktop$ sh script
AABATEAUX
BOULE
BOWLINGCOOL
A-ACONSTRUCTION
Ronan
8 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Yahoo Audio Search
- Contraintes d'emplacement du Sitemap
- Chercher des fichiers KML dans Google Earth
- Transfert de fichiers dans Google Talk
- Où placer son fichier Sitemap ? A la racine ?
- The Technology Behind Google
- Google s'empare de Writely, un traitement de texte en ligne
- Référencement de vidéos avec les fichiers sitemaps vidéo
- Nouvel article : "Google en résumé"
- Google Desktop pour Mac OS X
Consultez la description détaillée des produits ou services de Google suivants : Google Sites, Google Docs
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités





le forum