#!/usr/bin/perl -w
######################################################################
# ftpfetch.pl
######################################################################
# Perl Power! - Michael Schilli 1998
######################################################################

use Net::FTP;
use File::Listing;

$dir      = "/pub";
$host     = "remote.host.com";
$email    = "me\@mysite.com";

$ftp = Net::FTP->new($host, Timeout => 60) || 
    die "Cannot connect: $host";

$ftp->login("anonymous", $email) || die "Login failed";

$ftp->cwd($dir) || die "Directory $dir doesn't exist";
$ftp->binary();

foreach $entry (File::Listing::parse_dir($ftp->dir())) {
    my ($name, $type, $size, $mtime, $mode) = @$entry;

    if($type eq 'd') {
        printf "directory: $name (privileges: 0%o)\n", $mode;
    }
    elsif($type eq 'f') {
        print "file: $name ($size bytes)\n";
    }
}

$ftp->quit();

