#!/usr/bin/perl use warnings; use strict; use Net::FTP; use Net::FTP::AutoReconnect; use Net::FTP::RetrHandle; use Archive::Zip; my $ftp = Net::FTP::AutoReconnect->new("ftp.info-zip.com", Debug => $ENV{DEBUG}) or die "connect error\n"; $ftp->login('anonymous','example@example.com') or die "login error\n"; $ftp->cwd('/pub/infozip/UNIX/LINUX') or die "cwd error\n"; my $fh = Net::FTP::RetrHandle->new($ftp,'unz551x-glibc.zip') or die "Couldn't get handle to remote file\n"; my $zip = Archive::Zip->new($fh) or die "Couldn't create Zip object\n"; foreach my $fn ($zip->memberNames()) { print "unz551-glibc.zip: $fn\n"; }