使用Powershell提取zip文件失败的最后一个zip文件。

时间:2017-08-10 22:33:13

标签: powershell scripting zip

我正在尝试使用Powershell脚本解压缩目录中的多个zip文件。一切顺利,除了在目录中的最后一个zip文件中总是失败。 zip文件没有损坏 - 我可以手动解压缩它。它开始提取内容(我可以看到它在Windows资源管理器中填充),但最后它失败了,从Windows资源管理器中删除了该zip文件中提取的内容,并抛出以下错误:

Exception calling "ExtractToFile" with "3" argument(s). "Could not find a part of the path '<path-to-a-file-within-the-zip-archive>. 

我不确定当所有其他拉链解压得很好时为什么会发生这种情况。我还发现每当我将文件解压缩到与执行此代码的Powershell脚本相同的目录时,就不会发生这种情况。

以下是解压缩文件的代码:

 Get-ChildItem .\ZipFilesDirectory-Filter *.zip | Expand-Archive -DestinationPath .\ExtractedZipFolders -Force

1 个答案:

答案 0 :(得分:0)

事实证明,我的zip存档中有一个文件在解压缩到所需目录时导致“Path too long”问题。作为一种解决方法,我将存档解压缩到我的C盘(C:/),然后将其移动到正确的目录。