2017-07-28 97 views
0

创建zip文件后,如果成功,我想添加一个确认。布尔检测档案是否损坏

Start-Process -FilePath "$env:ZRoot\7z.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文件已损坏?

回答

1

您不需要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" } 
+0

& “$ ENV:ZRoot \ 7z.exe” T “d:\为MyBackup \ Log5.zip” 如果($ LASTEXITCODE -ne 0){写错误“备份是损坏。“} – Phoenix14830