Вызов exe из PowerShell и получение отзывов об успехе или неудаче - PullRequest
44 голосов
/ 17 января 2010

Как запустить исполняемый файл в PowerShell и с помощью оператора if определить, успешно он или нет?

Более конкретно, я пытаюсь получить devenv.exe для построения решения из сценария PowerShell, и мне нужно знать, успешно оно или нет. Под неудачей я имею в виду, что сборка не удалась, и я предполагаю, что devenv отправляет что-то в оболочку (возможно, в потоке stderr?)

Я попытался использовать &, Invoke-Expression и Invoke-Item и сумел заставить их всех запустить exe. Но я так и не смог получить отзывы об успехах / неудачах.

Ответы [ 2 ]

68 голосов
/ 17 января 2010

Вы пытались использовать переменную $LASTEXITCODE? Он будет содержать код завершения последнего вызванного .exe.

5 голосов
/ 13 октября 2017
.\YOUREXE.exe
if($LASTEXITCODE -eq 0)
{
    Write-Host "The last PS command executed successfully"
} 
else 
{
    Write-Host "The last PS command failed"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...