【发布时间】:2017-09-23 06:59:09
【问题描述】:
我需要使用类似于这个 shell 命令的 Perl 脚本来解压一个 25GB 的 tar 文件。
tar xvf tarFile.tar file1.txt file2.txt file3.txt ...
这是我尝试过的。
解决方案 1. 出现内存不足错误。
use Archive::Tar;
my $tarPath = 'path/to/tarArchive';
my $tar = Archive::Tar->new($tarPath); # Out of memory
解决方案 2. 出现内存不足错误。
use Archive::Tar;
my $tarPath = 'path/to/tarArchive';
my $tar = Archive::Tar->iter($tarPath, 1, { filter => qr/file1\.txt$/ } );
while ( my $f = $tar->() ) {
print $f->name, "\n"; # Out of memory
}
您能帮我理解一下哪里出了问题吗?
【问题讨论】:
-
看来你不是唯一一个遇到这个问题的人。 rt.cpan.org/Public/Bug/Display.html?id=104087