in reply to How to Read .7z files into Hash?

Completely Untested, and theoretical:
use Path::Tiny; my %name2blob; sub extract_zip{ my ($filename) = @_; my $nef = path($filename)->basename('.7z'); my $sts = $nef . ".sts"; my $sevenzcmd="ze e $filename -y -so "; open my $data, "-|", $sevenzcmd . $nef or die "Cannot open 7z $nef:$!"; $name2blob{$filename}{NEF} = path ($data)->slurp; close $data; open $data, "-|", $sevenzcmd . $sts or die "Cannot open 7z $sts:$!"; $name2blob{$filename}{STS} = path ($data)->slurp; close $data; }
Hmm - you may need to write your own "slurp" if Path::Tiny->slurp() does not like file handles.
do { local $/; <$data> }

        "Think of how stupid the average person is, and realize half of them are stupider than that." - George Carlin