Have a look at mirror; I haven't used it for a while, but it always did what was advertised.
That failing, LWP (or LWP::Simple) makes it pretty easy to roll your own. If you have a relatively small/static list of files:
use LWP::Simple; my $remote = 'ftp://ftp.example.com/path'; # All filenames relative to $remote my @files = qw( file1.tar.gz file2.tar.gz file3.zip subdir/another.tar.gz long/path/test.txt ); mirror("$remote/$_", "$local/$_") for @files;
If you need to generate listings of files recursively based on listings from the server, you will probably want to have a look at Net::FTP::Recursive's rls method.
If you just need something to work with a minimum of fuss, and don't actually need a Perl solution, wget will do the trick (Win32):
wget --mirror ftp://ftp.example.com/pathIn reply to Re: ftp new files
by rjt
in thread ftp new files
by Jim Wang
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |