my @members = $tar->list_files(); foreach my $f (@members) { my $fileName = $f; $fileName =~ s/.+\///; my $toUnzip = File::Spec->catpath("", $out_dir,$fileName); $tar->extract_file($f,$toUnzip) unless (-e $toUnzip); #fails on line above }