Bonsoir,
que je vous explique mon problème. J'ai un fichier.txt qui me sert de bdd avec une structure du type:
Comme on peut le voir cette bdd est composée d'un fichier ou plusieurs et y affiche les mots le composant (il y a un seul mot par ligne dans les fichier.txt). Pour chaque mot elle marque aussi le nombre fois qu'il apparaît dans le fichier et les lignes où il apparaît. Cette bdd est créée avant avec un autre script qui fait l'arborescence d'un répertoire, récupère chaque fichier et met tout dans la bdd. J'arrive donc à mon deuxième script
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Nomfichier1.txt empreintemd5 chemind'acces vide occurencedumot ligneouilapparait avion occurencedumot ligneouilapparait pouli occurencedumot ligneouilapparait Nomfichier2.txt empreintemd5 chemind'acces avion occurencedumot ligneouilapparait marque occurencedumot ligneouilapparait Nomfichier3.txt empreintemd5 chemind'acces manger occurencedumot ligneouilapparait pour occurencedumot ligneouilapparait car occurencedumot ligneouilapparait
Lorsque que je lance mon script je mets en paramètre un mot que je souhaite rechercher.
Je dois afficher le nomfichier, l'adresse du fichier, le mot, son nombre d'occurrence, les lignes où il apparaît.
On aurait donc si je tape ./projet.bash avion le résultat suivant:
Je dois me servir uniquement de la bdd. Elle est créée justement avant pour faire ça.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Nomfichier1.txt chemind'acces avion 1fois ligne2 Nomfichier2.txt chemind'acces avion 2fois ligne4ligne6
Et à vrai dire je n'ai aucune idée de comment faire. Je vois comment récupérer les lignes où il y a le mot avion (grep "\.txt"$ bdd.txt), récupérer le paramètre et le mettre dans une variable(motrecherche=$2), récupérer les lignes où il y a le mot (grep $motrecherche bdd.txt). Mais en faisant ça j'ai un affichage de tous les fichiers txt de la base de donnée et de tous les mots avion(comme dans l'exemple). Merci de votre aide![]()
Partager