如何通过powershell知道来自dotnet build命令的错误

ArD*_*mez 1 c# powershell .net-core

我的dotnet构建命令失败时我想要自定义脚本.当'dotnet build'因错误编译而失败时,或者当'dotnet test'失败时,如何使用powershell获取错误列表或不成功标记.

我想要等效的代码

dotnet test
if (!$result.Successful) {
    $errorMessage = ""
    if ($result.Error -ne $null) {
        $errorMessage = $result.Error.Message
    }
    Write-Host "##vso[task.logissue type=error;] error"
    Write-Host "##vso[task.complete result=Failed;]"
    Exit -1
}
Run Code Online (Sandbox Code Playgroud)

Mat*_*sen 10

您可以将标准输出和错误流与>流重定向运算符合并,然后检查$LASTEXITCODE自动变量以查看调用是否成功:

# Merge all streams into stdout
$result = dotnet test *>&1

# Evaluate success/failure
if($LASTEXITCODE -eq 0)
{
    # Success
}
else
{
    # Failed, you can reconstruct stderr strings with:
    $ErrorString = $result -join [System.Environment]::NewLine
}
Run Code Online (Sandbox Code Playgroud)