1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| #!/usr/bin/perl
# use module
use strict;
use warnings;
use NET::FTP;
sub mput {
my ( $ftp, $pattern ) = @_;
foreach my $file ( glob($pattern) ) {
$ftp->put($file) or warn $ftp->message;
}
}
sub mget {
my ( $ftp, $pattern ) = @_;
foreach my $file ( $ftp->ls($pattern) ) {
$ftp->get($file) or warn $ftp->message;
}
}
my ($hostname, $login, $passwd, $rep) = ("xxx.xxx.xxx.xx", "login", "password", "toto");
#my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size, $atime,$mtime,$ctime,$blksize,$blocks) = stat($file);
my $ftp = Net::FTP->new($hostname, Debug => 0) or die "Cannot connect $hostname: $@";
$ftp->login($login, $passwd) or die "Cannot login ", $ftp->message;
$ftp->binary();
$ftp->mkdir($rep);
foreach my $file (glob("$rep/*"))
{
mput($ftp,$file);
$ftp->rename($file,"$rep\/$file");
}
$ftp->quit; |
Partager