Может кто-нибудь сказать мне, что не так с этим кодом?
Насколько мне известно, @zipFiles = grep /zip/, $ftp->dir;
создает проблему, но если я удалю эту часть, у меня не будет никакой возможности использовать часть регулярных выражений.
Ошибка: <"Время, file_created_date, File_size, File_name "> файл не найден.
use Net::FTP;
#use File::Copy;
$Login = "<redacted>";
$Pwd = "<redacted>";
$ftpHost = "<redacted>";
$ftpFolder = "/daj/dhakj/ahdakl/abc_201206_def_05";
$ftp = Net::FTP->new( $ftpHost, Timeout => 100 );
if ($ftp) {
print $ftp->message;
}
$ftp->login( $Login, $Pwd );
print $ftp->message;
$ftp->cwd($ftpFolder);
@all_dir = $ftp->ls();
#print @all_dir;
foreach $ls_dir (@all_dir) {
if ( $ls_dir !~ /exe|txt|zip/ ) {
$latest_dir = $ls_dir;
}
}
print "$latest_dir\n";
$mcl_dir = '/daj/dhakj/ahdakl/abc_201206_def_05' . $latest_dir;
$ftp->cwd($mcl_dir) or die "not able to change the dir\n\n";
@zipFiles = grep /zip/, $ftp->dir;
foreach my $myfile (@zipFiles) {
if ( $myfile !~ /a|b|c|d|/g ) {
$ftp->get("$myfile");
print $ftp->message;
}
}