我有一个使用Visual Studio 2017创建的.NET Core 1.1控制台项目。
构建项目后,我需要运行powershell脚本,因此我将以下内容添加到MyProject.csproj文件中:

<Target Name="PostcompileScript" AfterTargets="Build">
    <Exec Command="execute-tasks.ps1" />
</Target>

现在,我需要在Linux环境中构建项目,我需要指示MSBuild在Linux中运行时运行execute-tasks.sh而不是execute-tasks.ps1

我相信这可以通过Condition属性实现,但是是否有一个包含操作系统名称的MSBuild变量?

最佳答案

变量是$(OS),通常检查是否为Windows_NT:

<Exec Command="./foo.sh" Condition=" '$(OS)' != 'Windows_NT' " />

关于linux - 如何在MSBuild中获取当前的操作系统?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43499222/

10-11 22:44
查看更多