1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| #!/usr/bin/perl
use warnings;
use Carp;
use strict;
#mes fichier sont pour l'instant dans le dossier c:/Perl/YC
my @mes_fichiers = lister_fichiers("C:/Perl/YC");
# ouverture du fichier pour y ecrire
open(TMP3, '>', "sequence.txt")
or die("Impossible d'ecrire dans le fichier sequence.txt, $!");
foreach my $file ( @mes_fichiers ) {
# Ouverture de mon fichier
open( TMP1, '<', $file) or die("Impossible de lire $file, $!");
LECTURE:
while ( <TMP1> ) {
if ( $. == 3 ) {
print TMP3 $_;
# On sort de la boucle while
last LECTURE;
}
}
close(TMP1);
}
close(TMP3);
#Lit un repertoire et retourne dans un tableau tous les fichiers
#du repertoires et de ses sous repertoires.
sub lister_fichiers {
my $repertoire = shift;
opendir (REP, $repertoire) or
croak "impossible d'ouvrir le repertoire $repertoire\n";
my @file_rep = grep { !/^\.\.?$/ } readdir(REP);
closedir (REP);
my @fichiers = ();
foreach my $nom (@file_rep) {
if ( -f "$repertoire/$nom") {
push (@fichiers, "$repertoire/$nom");
}
elsif ( -d "$repertoire/$nom") {
push (@fichiers, &lister_fichiers("$repertoire/$nom"));
}
}
return @fichiers;
} |
Partager