gratifiant > comp.lang.* > comp.lang.perl

nicolas-laurent (09/04/2005, 20h00)
Ce script doit lire plusieurs fichiers dans un repertoire effectuer le
traitement (numeroter les mots) et ecrire une sortie pour chaque
fichier.
Je n'arrive pas a trouver ce qui ne fonctionne pas. Je vous remercie
de votre aide.

use strict;
use warnings;
use File::Find;

# Passer deux arguments a la commande find
# premier argument est une subroutine qui est traitement sur chaque
fichier.
# deuxieme argument est le repertoire courant

find(\&number, ".");

# Subroutine that number words.
sub number {
while (<>) {
my @words = split(/\W*\s+\W*/, $_); # split
foreach my $num ( 0 .. $#words) {
open OUT, ">out_$ARGV.txt" and select OUT if 1..1;
{print $num+1, "\t$words[$num] -- file $ARGV\n"}

}
}
}
J.Pierre Pourrez (10/04/2005, 14h20)
Le Sat, 09 Apr 2005 11:00:58 -0700, nicolas-laurent a écrit :

[..]
> "\t$words[$num] -- file $ARGV\n"}
> }
> }


Manquera pas un petite "close OUT;" dans la boucle ?

Cordialement
Jean-Pierre
Discussions similaires