PERL Archive::Zip格式错误:签名错误

PERL Archive::Zip格式错误:签名错误,perl,zip,compression,Perl,Zip,Compression,我有一个由Ubuntu中的zip命令创建的zip文件,并由Ubuntu中包含的归档管理器更新 我试图使用PERL读取该归档文件的成员,如下所示: use strict; use Archive::Zip qw( :ERROR_CODES :CONSTANTS ); my $zip = Archive::Zip->new(); unless ( $zip->read( '/home/mohamad/Desktop/VM/vm.zip' ) == AZ_OK ) { die

我有一个由Ubuntu中的zip命令创建的zip文件,并由Ubuntu中包含的归档管理器更新

我试图使用PERL读取该归档文件的成员,如下所示:

use strict;
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );


my $zip = Archive::Zip->new();
unless ( $zip->read( '/home/mohamad/Desktop/VM/vm.zip' ) == AZ_OK ) {
    die 'read error';
    }

my @files = $zip->memberNames();
print join("\n" , @files) ."\n";
这个压缩文件大约为12GB,我知道这个模块的压缩限制不超过4GB,但我正在尝试看看它是否至少可以用于访问a+4GB归档文件的成员

以下是我得到的错误:

在/usr/share/perl5/Archive/Zip.pm第477行。 存档::Zip::_readSignature'IO::File=GLOB0xb75ae8', 在处调用“/home/mohamad/Desktop/VM/VM.zip” /usr/share/perl5/Archive/Zip/Archive.pm第603行 Archive::Zip::Archive::readFromFileHandle'Archive::Zip::Archive=HASH0xb75c20', 'IO::File=GLOB0xb75ae8','调用/home/mohamad/Desktop/VM/VM.zip' 在/usr/share/perl5/Archive/Zip/Archive.pm第548行 存档::Zip::存档::读取'Archive::Zip::Archive=HASH0xb75c20', 在test.pm第6行调用“/home/mohamad/Desktop/VM/VM.zip”读取错误 下午6点,7号线。 我的问题是:

此错误是否是由于具有+4GB zip文件和 模块限制,还是其他原因? 如果这是由于4 GB的限制,那么还有哪些模块可以提供相同的功能? 我真正需要的是归档::Zip能够重命名归档文件中的文件成员

谢谢你的帮助