http://qs1969.pair.com?node_id=182027


in reply to Net::FTP

When a Net::FTP operation fails, you really want to get the error details so you know what failed. It always takes me a while to find the details in the Net::FTP docs so I thought I'd post here:

Initial Connection: the connection is established when you create the object. If the connect fails, new() will return undef and the error message will be in $@:

my $ftp = Net::FTP->new($destserv) || die "Connect to $destserv failed: $@";

Commands: if a command fails, the method return value will be undef. The error message can be accessed using the 'message()' method. If you're checking for a particular message, you might be better off using the 'code()' method to get the three digit FTP protocol status code which preceded the message:

$ftp->get($file) || die "get($file) failed: " . $ftp->code() . ": " . $ftp->message();