Определить, если-еще выход PowerShell - PullRequest
0 голосов
/ 25 октября 2018

Я пытаюсь создать строку PowerShell для компиляции программы, и если она правильно скомпилирована, я хочу открыть программу.Проблема, которую я пытаюсь решить, состоит в том, чтобы понять, как PowerShell понимает, когда компилятор MiniGW с командой gcc (для файлов C) выдает правильный результат.

Зная, что == TRUE и == FALSE не принимаются в PowerShell. Я пробовал if без логического оператора

if(gcc '.\FileINeedToCompile.c'){
  Write-Host Correct;
} else {
  Write-Host NotCorrect;
}

, но я получаю результат NotCorrect в случае, если программа правильно скомпилирована, а также в случаеон не скомпилирован.

Я также пробовал некоторые варианты с логическим оператором -eq вроде

if((gcc '.\FileINeedToCompile.c') -eq $FALSE)

, но я всегда получаю результат else заявление.

Я искал везде, и я действительно не знаю, как я мог заставить это работать.Спасибо за помощь.

1 Ответ

0 голосов
/ 25 октября 2018

Вы можете запустить gcc и записать код ошибки для обработки.Я не тестировал с gcc, но я тестировал с небольшим консольным приложением, и это работает, предполагая, что код возврата 0 является успешным.

gcc '.\FileINeedToCompile.c'
if($LASTEXITCODE -eq 0){
  Write-Host Correct;
} else {
  Write-Host NotCorrect;
}

Немного больше информации об этом можно найти здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...