是有时你不知道要面向的所有平台,有时 .NET 本身将了解如何支持新平台,并且你也希望工具可以在那里运行。
若要使工具以这种方式工作,请将 any 运行时标识符添加到项目文件:

<PropertyGroup>
<RuntimeIdentifiers>
linux-x64;
linux-arm64;
macos-arm64;
win-x64;
win-arm64;
any
</RuntimeIdentifiers>
</PropertyGroup>

此 RuntimeIdentifier 位于平台兼容性检查的"根"位置,由于它声明了对 任何 平台的支持,
因此打包的工具将是最兼容的工具类型-一种依赖于框架且与平台无关的 .NET DLL,这需要兼容的 .NET 运行时才能执行。
执行创建工具的 dotnet pack 时,会看到一个用于 any RuntimeIdentifier 的新包,与其他特定于平台的包以及顶级清单包一起显示。
关于dotnet tool exec
dotnet tool exec 可以使用命令执行 .NET CLI,而无需全局或本地安装。 这对于 CI/CD 或临时使用场景尤其有用。
dotnet tool exec --source ./artifacts/package/ dotnetsay "Hello, World!"
关于dotnetsay
dnx 脚本提供了一种简化的方式来执行工具。 它将所有参数转发到 dotnet CLI 进行处理,使工具的使用尽可能简单
dnx dotnetsay "Hello, World!"
关于dotnet CLI指令重命名

新的别名更符合各类CLI 标准,使 dotnet CLI 与其他工具更加一致。