—#!/usr/bin/perl
# $Id: rdir,v 1.4 2008/02/04 00:56:51 jdl Exp $
=pod
=head1 NAME
rdir - Sample script to show you how to use the rdir function.
=head1 SYNOPSIS
% rdir [--help] <server> <user> <password> <remote_path> <local_path>
=head1 DESCRIPTION
This script is an example script for users of the C<Net::FTP::Recursive>
module to be able to see how to utilize the C<rdir> method in a script.
=head1 AUTHOR
Jeremiah Lee <texasjdl_AT_yahoo_DOT_com>
=cut
use
Net::FTP::Recursive;
use
Getopt::Long;
use
FileHandle;
use
Pod::Usage;
use
strict;
use
warnings;
GetOptions(
'help|?'
=>
sub
{ pod2usage(); } );
pod2usage()
unless
@ARGV
== 5;
my
$host
=
shift
;
my
$username
=
shift
;
my
$passwd
=
shift
;
my
$remote_path
=
shift
;
#where to grab from
my
$filename
=
shift
;
my
$fh
= new FileHandle;
$fh
->
open
(
">$filename"
);
select
$fh
;
$| = 1;
select
STDOUT;
my
$ftp
= Net::FTP::Recursive->new(
$host
, );
#Debug => 1);
$ftp
->login(
$username
,
$passwd
) or
die
"Could not log in!"
;
$ftp
->binary();
$ftp
->cwd(
$remote_path
);
$ftp
->rdir(
FilenameOnly
=> 1,
Filehandle
=>
$fh
,
PrintType
=> 1 );
$fh
->
close
;
$ftp
->quit;