perl与子目录解压缩

时间:2013-11-05 04:28:13

标签: perl unzip

即时通讯使用perl模块提取.zip文件,它包含许多子目录,我使用下面的代码

my $extract_path = $des_path . "\\files";
mkdir $extract_path;
my $filename = $des_path . "\\" . basename($zipfile_path);
my $zip = Archive::Zip->new($filename);

foreach my $member ($zip->members)
{
    next if $member->isDirectory;
    (my $extractName = $member->fileName) =~ s{.*/}{};
    $member->extractToFileNamed("$extract_path/$extractName");
}

但我的问题是它将整个文件放在一个文件夹中并避开子文件夹。这就是整个文件放在一个文件夹而不是制作子文件夹

出了什么问题,任何人帮助我

谢谢

1 个答案:

答案 0 :(得分:3)

尝试用

替换你的foreach块

$ zip-> extractTree();