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 51 52 53 54 55 56 57 58
| #!/usr/bin/perl
use strict;
use warnings;
my ($nombre, $nb, $na, @fichier_snmp);
do {
print "Which TT want to see? \n";
$nombre = <STDIN>; #saisie au clavier
chomp($nombre);
} while ($nombre !~ /^\d{1,2}$/);
open (my $in,"<", "fichier$nombre.txt") || die "Le fichier n'existe pas !\n";
while (my $tablignes = <$in>) {
push @fichier_snmp, $tablignes; # on sauve le fichier pour pouvoir le ré-écrire plus tard
($nb) = $tablignes =~ /\b(\d{7})\b/ if !defined $nb;
}
close $in;
if ($nb) {
print "Le device ID de la TT $nombre est le suivant $nb\n";
print "Which TT want to Modify (1), Verify (2) or exit (3) \n";
my $i = <STDIN>;
if ($i == 1) {
modify();
}
if ($i == 2) {
verify();
}
if ($i == 3) {
exit();
}
}
else {
print "Pas de device ID trouvé pour la TT $nombre\n";
}
sub modify{
my $na = verify();
if ($na != $nb) {
open (my $out,">", "fichier$nombre.txt") || die "Le fichier ne peut être édité !\n";
print "Modification en cours\n";
foreach my $line (@fichier_snmp) {
$line =~ s/\b\d{7}\b/$na/g;
print $out $line;
}
close $out;
}
}
sub verify{
open my $var, "<", "information.txt" or die "Le fichier information.txt ne peut être lu: $!\n";
#open (my $var, "information.txt");
my $na;
while (!defined $na && (my $line = <$var>)) {
($na) = $line =~ /TT$nombre\s+(\d{7})\b/;
}
close $var;
print"Le tableau: $na \n";
return $na;
} |
Partager