【发布时间】:2017-08-17 09:39:51
【问题描述】:
$sourceZip = "Path\Bla.zip\"
$destinationForExtraction = "Anotherpath\Bla"
7z x $sourceZip "-o$destinationForExtraction" *.exe -y
此代码 sn-ps 给出错误7z : ERROR: CRC Failed: SomeFile.exe。
我已经检查了上述文件的 crc。是的,crc 不匹配。但是使用手动过程(右键单击>提取到文件夹)提取相同的zip。
有没有办法处理这个异常?
7z 的这些矛盾行为背后的原因是什么?手动解压时可以正常解压,但命令行解压时无法解压同一个文件。
【问题讨论】:
-
如果您希望捕获异常并处理它,请使用 try/catch。如果你在看,为什么会这样?然后我建议你检查一次其他系统或重新安装一次 7zip 并查看
-
这个要问
7z.exe的作者了。 -
@Bill_Stewart 感谢您的建议。
-
@RanadipDutta 感谢您的建议。我肯定尝试过尝试/捕获。但不幸的是,在外部命令的情况下,PowerShell 不支持 try/catch。在这种情况下,7z 是一个外部命令而不是 .NET 命令,因此无法使用 try/catch 捕获异常。我尝试使用 $LASTEXIT 代码,但也没有用。
标签: windows powershell 7zip powershell-4.0 powershell-5.0