#!/usr/bin/perl -w #ouverture d'un fichier en lecture, référencé par FILE en position 0 dans cygwin béta 20. open(FILE,"$ARGV[0]"); #ouverture d'un fichier en écriture, référencé sous le nom OUT open(OUT,">resultat.txt"); #on affiche dans l'entrée standard:Quel mot voulez vous rechercher?\ print "Quel mot voulez vous rechercher?\n"; #le mot de l'utilisateur est stocké dans la variable $mot $mot=; #on enlève les retours à la ligne s'il y en a de la variable mot chomp ($mot); #on crée un compteur et on l'initialise à 0 $compteur=0; #on crée un deuxième compteur appelé $compte qui est initialisé à 0 $compte=0; #tant qu'il y a des lignes à lire dans le fichier en lecture, je les lis while ($ligne = ) { #tant qu'il y a le mot de l'utilisateur dans les lignes du fichier, je fais while ($ligne=~/$mot/gi) { #une incrémentation du compteur $compteur ++; } #on cherche le mot de l'utilisateur et on le remplace par: <<$mot>> $ligne=~s/$mot/<<$mot>>/gi; #si dans les lignes du fichier, il << if ($ligne=~/<> n'a pas été trouvé dans le fichier $ARGV[0] print OUT "le mot <<$mot>> n'a pas été trouvé dans le fichier $ARGV[0]" } # si le compteur est supérieur à zéro, on fait: if ($compteur>0) { #on affiche le mot <<$mot>> est présent $compteur fois dans $compte lignes du fichier $ARGV[0] print OUT "\nle mot <<$mot>> est présent $compteur fois dans $compte lignes du fichier $ARGV[0]" } #on ferme le fichier en lecture close FILE; # on ferme le fichier en écriture close OUT;