powershell - 检测 if-else 输出 PowerShell
问题描述
我正在尝试制作一个 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
声明的结果。
我到处搜索,我真的不知道如何使它工作。感谢帮助。
解决方案
您可以运行 gcc 并捕获错误代码以进行处理。我没有使用 gcc 进行测试,但我确实使用了一个小型控制台应用程序进行了测试,并且假设返回代码 0 是成功的,这可以正常工作。
gcc '.\FileINeedToCompile.c'
if($LASTEXITCODE -eq 0){
Write-Host Correct;
} else {
Write-Host NotCorrect;
}
更多信息可以在这里找到。
推荐阅读
- python - Python (Google Sheets API) - 搜索某个字符串并返回整行
- authorization - 如何添加服务器端检查 api 仅由租户管理员调用
- python - 寻找从 A 到 B 的路线
- c# - 为 HttpPost 操作获取 404
- javascript - Discord.js 关于获取对嵌入做出反应的用户的问题{更新}
- python - 如何在操作系统级别导入 python 包以便它可以重用
- javascript - 在web3 fromWei方法中将字符串精确转换为十进制
- php - Google 更新创建的错误 - 此文件应通过 HTTPS 提供。此下载已被阻止
- regex - 尝试使用正则表达式提取价值
- sql-server-2008 - 查询以查找条目并转置