我有以下msbuild脚本将整个DeploymentDirectory复制到VersionSpecificDirectory。这是片段:
<CreateItem Include="$(DeploymentDirectory)/**/*.*" >
<Output ItemName="AllDeploymentFilesToCopy" TaskParameter="Include" />
</CreateItem>
<Copy SourceFiles="@(AllDeploymentFilesToCopy)"
DestinationFiles="@(AllDeploymentFilesToCopy->'$(VersionSpecificDirectory)\%(RecursiveDir)%(Filename)%(Extension)')" />
脚本用于复制DeploymentDirectory中的所有文件而不是目录本身是什么?
更新:我尝试将斜杠的方向更改为反斜杠,问题仍然存在。
另一个更新:这与msbuild代码无关。我的问题中的代码和答案中的代码都可以正常工作。
答案 0 :(得分:36)
试试这个:
<ItemGroup>
<MySourceFiles Include="c:\MySourceTree\**\*.*"/>
</ItemGroup>
<Target Name="CopyFiles">
<Copy
SourceFiles="@(MySourceFiles)"
DestinationFiles="@(MySourceFiles->'c:\MyDestinationTree\%(RecursiveDir)%(Filename)%(Extension)')"
/>
</Target>
来自MSDN。