[PERL] Rendre une erreur non bloquante
Résolu
NewKind
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
clody -
clody -
A voir également:
- [PERL] Rendre une erreur non bloquante
- Comment rendre un fichier moins lourd - Guide
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Instagram une erreur s'est produite - Forum Instagram
- Erreur t32 ✓ - Forum Livebox
9 réponses
Et si tu fait comme ça?
lami20j
my @output2 = $session->cmd("copy flash:vlan.dat t[ftp://]$backup_host/$device-vlan.dat\n\n\n") or warn "E/S : $!\n";ou
print @output2 if @output2;--
lami20j
Merci pour la réponse ! Mais malheureusement ça ne fonctionne pas.
Le programme s'arrete dès que le routeur lui renvoit l'erreur, il n'a pas le temps d'aller jusqu'au 'warn' ou 'print output'...
Last command and router error %Error opening flash:vlan.dat (No such file or directory) at C:\test\telnet_cisco.pl line 83
Le programme s'arrete dès que le routeur lui renvoit l'erreur, il n'a pas le temps d'aller jusqu'au 'warn' ou 'print output'...
Net::Telnet::Cisco;
J'ai fait pas mal de recherches dans les docs sur ce module, mais je n'ai rien trouvé qui solutionne mon probleme jusqu'à present...
J'ai fait pas mal de recherches dans les docs sur ce module, mais je n'ai rien trouvé qui solutionne mon probleme jusqu'à present...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci !
J'avais trouvé quelques infos à cette adresse http://noc.tele.dk/Cisco.pm
mais j'ai peur de comprendre que ça n'est tout simplement pas faisable !
#
# PUBLIC CMD
#
# @results = $cisco->cmd($command [, $timeout]);
#
# Send "$command" to the remote Cisco, return the results in an
# array of lines. Prompt and command-echo are stripped.
# Error is reset.
#
J'avais trouvé quelques infos à cette adresse http://noc.tele.dk/Cisco.pm
mais j'ai peur de comprendre que ça n'est tout simplement pas faisable !
#
# PUBLIC CMD
#
# @results = $cisco->cmd($command [, $timeout]);
#
# Send "$command" to the remote Cisco, return the results in an
# array of lines. Prompt and command-echo are stripped.
# Error is reset.
#
mais j'ai peur de comprendre que ça n'est tout simplement pas faisable !
as-tu essayé avec eval?
as-tu essayé avec eval?
$x = 0; eval{ $res = 1 / $x ; print "je ne peux pas continuer\n"; }; if ($@){ print "Division par zero\n"; #exemple de traitement } print "Je continue le script\n";
$x = 0;
eval{
$res = 1 / $x ;
print "je ne peux pas continuer\n";
};
if ($@){
print "Division par zero\n"; #exemple de traitement
}
print "Je continue le script\n";
--
lami20j
Possible ! Mais je manque de temps pour me lancer là dedans pour l'instant.
Comme je n'ai que deux types de materiel different à tester, j'ai plutot crée deux routines distinctes, et je viens preciser le type de materiel en parametre au lancement du script pour lancer l'une ou l'autre.
Merci en tout cas pour ton aide, je finirai sans doute par le modifier le script avec ces indications ;)
eval{
$res = 1 / $x ;
print "je ne peux pas continuer\n";
};
if ($@){
print "Division par zero\n"; #exemple de traitement
}
print "Je continue le script\n";
--
lami20j
Possible ! Mais je manque de temps pour me lancer là dedans pour l'instant.
Comme je n'ai que deux types de materiel different à tester, j'ai plutot crée deux routines distinctes, et je viens preciser le type de materiel en parametre au lancement du script pour lancer l'une ou l'autre.
Merci en tout cas pour ton aide, je finirai sans doute par le modifier le script avec ces indications ;)