如何在PowerShell中运行可执行文件并通过if语句确定它是成功还是失败?
更具体地说,我正在尝试让devenv.exe从PowerShell脚本构建解决方案,我需要知道它是成功还是失败。失败了,我的意思是构建失败了,我假设devenv正在向shell发送一些东西(可能在stderr
流中?)
我尝试使用&
,Invoke-Expression
和Invoke-Item
并设法让所有人运行exe。但我无法获得有关成功/失败的反馈。
答案 0 :(得分:68)
您是否尝试过使用$LASTEXITCODE
变量?它将包含被调用的最后一个.exe的退出代码。
答案 1 :(得分:5)
.\YOUREXE.exe
if($LASTEXITCODE -eq 0)
{
Write-Host "The last PS command executed successfully"
}
else
{
Write-Host "The last PS command failed"
}