Net::ftp code retour - Perl - Programmation
Marsh Posté le 21-04-2009 à 17:09:07
existe il une solution simple
pour gerer les erreur;
pouvoir afficher dans la log
et ne pas avoir un die
qui arrete le script certes mais qui ne me permet pas
de mettre de message dans ma log
Marsh Posté le 21-04-2009 à 17:37:28
bah tu fais pas de die et voilà, et tu te reconnectes, en prenant depuis le début.
Marsh Posté le 22-04-2009 à 08:05:30
apparamment avec un eval c'est possible
eval {
$ftp->login("$machine",'user2');
} ;
if ($@) {
print "error";exit 1;
}
Marsh Posté le 23-04-2009 à 01:02:07
donny3 a écrit : Salut, |
Pourquoi faire compliqué avec des évals quand on peut faire simple? Suffit de lire la doc de net::ftp:
Citation : If the constructor fails undef will be returned and an error message will be in $@ |
Donc apres un $ftp = Net::FTP->new("$machine", Debug => 0);
il suffit de tester si $ftp est défini ou non:
if defined $ftp ...
Et pour les autres méthodes, c'est dans la doc:
Citation : Unless otherwise stated all methods return either a true or false value, with true meaning that the operation was a success. When a method states that it returns a value, failure will be returned as undef or an empty list. |
A+,
Marsh Posté le 21-04-2009 à 10:43:50
Salut,
J'utilise net::ftp et j'aimerai recupérer les codes retour de certaine method.
Pour la connexion par exemple, si elle echoue, je n'ai aucun code retour
je suis obliger de faire un test comme ceci
mais sa me parait basic:
je ne veux pas utilise le
or die "Cannot connect to some.host.name: $@";
merci