7zip提取和删除仅在许多文件中的一个上失败

时间:2015-05-07 12:53:09

标签: php recursion cmd 7zip extraction

我尝试使用PHP运行7zip以递归方式提取用户放在其他zip文件中的所有zip文件,然后删除原始zip。

我使用的代码工作,除了一个更大的文件(大约7gigs)有一些不寻常的文件类型(例如hdr和cab文件),它没有完全提取文件,制作了一些它做的重复,然后没有删除原始的zip。我唯一看到的与此不同的是命令提示我从所说的" Incomplete Extraction"中运行了php文件。我不确定为什么提取和删除对每个文件都起作用,但是这个。

任何理解这一点的帮助将不胜感激! 谢谢你的时间

以下是代码段:

$cmd_2 = "FOR /R \"$zip_file_directory\" %I IN (*.zip) DO (7z x \"%I\" -aou -o\"%~dpI\" && del \"%~fI\")";
exec($cmd_2, $out_2, $ret_2);

修改

它还返回0退出代码。所以我再也不知道出了什么问题。 但是查看$out我可以看到数组中的2700个键/值关系(例如:[2685] => Extracting Client Video\Reviewer\setup.lid) 最后它说"子项错误:5"但我似乎无法找到确切意味着什么的方法。

编辑II 我经历了2700行代码,发现了一些代码:" [1325] => can not open output file ...."然后有一个文件名。 任何想法为什么这种情况很少发生(看起来这些是5个错误)在数千行提取中?

编辑III

有一篇文章here声明这可能是防火墙的7zip问题,任何人都可以确认或否认这个问题吗?

0 个答案:

没有答案