布尔测试档案是否损坏

Boolean test if an archive is corrupt

创建 zip 文件后,如果成功,我想添加一个确认。

Start-Process -FilePath "$env:ZRootz.exe" -ArgumentList "t D:\MyBackup\Log5.zip *.* -r" -Wait -PassThru

我得到这个作为输出:

 Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName                                                                                                                                                                                            

 -------  ------    -----      ----- -----   ------     -- -----------                                                                                                                                                                                            
  4       2      248       1088     6     0.02  10236 7z                

如果 zip 文件已损坏,如何从命令行捕获布尔测试?

您不需要 Start-Process。只需 运行 命令并检查 $LASTEXITCODE 变量(即可执行文件的退出代码)。根据 7-Zip 文档,非零退出代码表示错误。示例(未测试):

& $(Join-Path $Env:ZRoot "7z.exe") t "D:\path name\whatever.zip"
if ( $LASTEXITCODE -ne 0 ) { "There was an error" }