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 49 50
|
use strict;use warnings;
use IO::Uncompress::Unzip qw(unzip $UnzipError) ;
use File::Find;
use Archive::Zip qw/ :ERROR_CODES :CONSTANTS /;
my $n = 0;
sub recherche {
if (-f){
++$n
if $File::Find::name =~ /\.zip/;
}
}
find(\&recherche,"C:\\tests\\logs\\Securitas\\");
$n--;
my $econtrat_zip = '';
my $econtrat_log = '';
my $econtrat_membre_zip = '';
my $zip = Archive::Zip->new();
my $pathmembre = "C:\\tests\\logs\\Securitas\\membres\\";
for (my $i = 0; $i < $n; $i++){
$econtrat_zip = 'C:\\tests\\logs\\Securitas\\daily_econtrat_log' . $i . '.zip';
unless ( $zip->read( $econtrat_zip ) == AZ_OK ) {
die 'erreur de lecture';
}
my @memberZip = $zip->membersMatching( '.*\.zip' );
my $nb = @memberZip;
foreach my $membre(@memberZip){
for (my $j = 0; $j < $nb; $j++){
$econtrat_mzip = 'daily_econtrat_log_membre' . $j . '.zip';
$zip->extractMember($membre, "$pathmembre\\$econtrat_mzip");
}
}
} |
Partager