use warnings; use strict; use Archive::Extract; my $inputs = "~/inputs"; my $results = "/home/steve/results"; my @files = <$inputs/*.tar.gz>; for (@files){ my $ae = Archive::Extract->new(archive => $_); $ae->extract(to => $results) or die "couldn't decompress the damned $_ file!: " . $ae->error; print "decompressed $_\n"; }