如何在 dotnet core 中编写跨平台 postbuild 事件

how to write cross platform postbuild event in dotnet core

我需要一些帮助来编写一个可以跨平台工作的 post 构建事件。我的 csproj 文件中的以下内容适用于 windows 但不适用于 Unix。谢谢

  <Target Name="PostBuild" AfterTargets="PostBuildEvent">
    <Exec Command="copy /Y &quot;$(TargetDir)bin\*.dll&quot; &quot;$(TargetDir)*.dll&quot;" />
  </Target>

对于这种特定情况,使用 MSBuild Copy Task.

可能更容易

在您的 csproj 文件中:

    <ItemGroup>
        <MySourceFiles Include=$(TargetDir)\bin\*.dll"/>
    </ItemGroup>

    <Target Name="CopyFiles">
        <Copy
            SourceFiles="@(MySourceFiles)"
            DestinationFolder="$(TargetDir)"
        />
    </Target>