如何强制 `dotnet` CLI 为 return 非零退出代码?

How to force `dotnet` CLI to return non zero exit code?

我 运行 dotnet 来自 powershell 脚本,当我指定一些未知的开关时,powershell 没有检测到任何错误。输出到标准输入,而我希望它是标准错误。

它是 dotnet 或 powershell 端的设置吗?我需要脚本在出错时失败。

dotnet pack -dsfsdf Microsoft (R) Build Engine version 15.8.166+gd4e8d81a88 for .NET Core Copyright (C) Microsoft Corporation. All rights reserved.

MSBUILD : error MSB1001: Unknown switch. Switch: -dsfsdf

For switch syntax, type "MSBuild /help"

确实 dotnet-pack 将错误写入标准输出,但是在未知参数的情况下它会将退出代码设置为 1。您可以使用以下代码进行检查:

dotnet pack -asd
echo $LASTEXITCODE