erreur d'execution de mon programme en perl
bonsoir, mon programme consiste a:
-connexion a telnet(host et username et password sont des valeurs dynamiques)
-lancer la commande 'show ISDN active'
-afficher le resulat de la commande
-si le resultat=28 l'erreur worning s'affiche et on decconecte de la session
-si le resultat=30 l'erreur critical s'affiche et on decconecte de la session
-si non il saffiche ok
voici mon code source ecrit en perl:
Code:
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
| #!/usr/bin/perl
use strict;
use Net::Telnet;
use Getopt::Std;
my %options=();
getopts("H:U:P",\%options);
my$session=new Net::Telnet->session(
- hostname =>shift || $options{H},
- username => shift || $options{U},
- password => shift || $options{P},
);
my @lines=$session->cmd('show ISDN active');
my $reslt=@lines;
{
my %errors=('ok'=>0, 'warning'=>1, 'critical'=>2);
if ($reslt=28){
print ("error \n", $errors=>1);
exit 1;
close->$session;
}
elsif($reslt=30){
print("error \n", $errors=>2);
exit 2;
close->$session;
}
else {
print ("error \n", $errors=>0);
exit 0;
close->$session; |
mais l'erreur suivante s'affiche:
Citation:
Global symbol "$errors" requires explicit package name at ./test.pl line 17.
Global symbol "$errors" requires explicit package name at ./test.pl line 22.
Global symbol "$errors" requires explicit package name at ./test.pl line 27.
Missing right curly or square bracket at ./test.pl line 29, at end of line
syntax error at ./test.pl line 29, at EOF
Execution of ./test.pl aborted due to compilation errors.