检测if else输出PowerShell



我正在尝试制作一个PowerShell字符串来编译程序,如果编译正确,我想打开该程序。我试图解决的问题是了解PowerShell如何理解带有gcc命令(针对C文件(的MiniGW编译器何时抛出正确的结果。

知道PowerShell中不接受== TRUE== FALSE,我尝试了一个没有任何逻辑运算符的if

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

但在程序正确编译和未编译的情况下,我得到了CCD_ 5的结果。

我还尝试了一些使用逻辑运算符-eq的变体,比如

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

但我总是得到else语句的结果。

我到处找,我真的不知道该怎么做。谢谢你的帮助。

您可以运行gcc并捕获错误代码进行处理。我没有用gcc进行测试,但我用一个小型控制台应用程序进行了测试,假设返回代码0成功,这就可以了。

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

关于这方面的更多信息可以在这里找到。

最新更新