PDA

Просмотр полной версии : Perl работа с фтп - Не работает


zer0ska
08.09.2009, 17:11
Задача: получить в масив листинг дерриктории на фтп.
Делаю все как по ману
http://search.cpan.org/dist/libnet/Net/FTP.pm


my $ftp = Net::FTP->new($host, Debug => 0) or print"Connect: [ERROR]\r\n";

$ftp->login($login, $password) or print"Authorisation:[ERROR]";
$ftp->cwd();
@q = $ftp->ls(".");
foreach(@q) { print $_; }
$ftp->quit;

Просто не работает =( ошибок не выводит библиотека с цпана последняя
Пробовал на различных фтп.

eLWAux
08.09.2009, 17:23
попробуй:
use Net::FTP;

my $host = 'some.host.name';
my $login = 'abc';
my $password = 'def';
my $folder = '/pub';

my $ftp = Net::FTP->new($host, Debug => 0) or die "Connect: [ERROR]\r\n";

$ftp->login($login, $password) or die "Auth: [ERROR]";
$ftp->cwd($folder);

@q = $ftp->ls($folder);
foreach(@q) { print $_."\n"; }

$ftp->quit;
у меня работает.
запусти из под cmd и посмотри что скрипт пишет, какую ошибку.

Kaimi
08.09.2009, 17:23
Нормально все работает

demond
09.09.2009, 10:28
zer0ska, попробуй перевести соединение в пассивный режим
$ftp->pasv();
А ошибки я смотрю здесь:
$ftp->message;

zer0ska
10.09.2009, 14:25
Спасибо
вроде заработало сам не понел где ошибка но тут.
Timeout at /usr/share/perl/5.8/Net/FTP.pm line 972
Сам модуль http://cpansearch.perl.org/src/GBARR/libnet-1.22/Net/FTP.pm

zer0ska
10.09.2009, 18:10
ЗЫ Как сделать чтобы ошибки модулей не прерывали работу скрипта ?

Kaimi
10.09.2009, 19:37
eval используй