use Archive::Zip; use Archive::Zip::MemberRead; ...set up my variables and readdir to get list of Zips... foreach $file (@files) { my $zip = new Archive::Zip("$source/$file"); my $member = $zip->memberNamed('WebTrends.log'); my $fh = $member->readFileHandle(); while (defined($line = $fh->getline())) { ...process each line and write some values to a file... } $fh->close(); }