use IO::Uncompress::Unzip qw(unzip $UnzipError); #lots of unrelated code... my $word = 'test.docx'; # In the actual script I was walking a NetApp filer. my $settingsXML; unzip $word => \$settingsXML, Name => 'word/settings.xml' or die "unzip failed: $UnzipError\n";