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
| #!/usr/bin/perl -w
use strict;
my ($fic1, $fic2) = ("fichier1.txt", "fichier2.txt");
my @tab1;
my @tab2;
@tab1 = ChargeTab($fic1);
@tab2 = ChargeTab($fic2);
if (@tab1 eq @tab2)
{
print "données identiques entre $fic1 et $fic2\n";
}
else
{
print "données différentes entre $fic1 et $fic2\n";
print "$fic1 contient ", scalar(@tab1), " lignes valides\n";
print "$fic2 contient ", scalar(@tab2), " lignes valides\n";
}
sub ChargeTab
{
my $fic = shift();
my @retour;
open(FIC, "$fic") or die("lecture $fic erreur : $!\n");
while(<FIC>)
{
chomp();
# attention, ici, je ne charge par une ligne vide ou ne contenant que des espaces
if ($_ && $_ !~ /^ +$/)
{
s/ +/ /g;
push(@retour, $_);
}
}
close(FIC);
@retour = sort(@retour);
return(@retour);
} |
Partager