Mar*_*rko 5 xcopy robocopy post-build-event visual-studio-2013
我想在构建过程成功后以给定的文件扩展名递归复制所有文件。
机器人复制
ROBOCOPY %source% %destination% /S *.as?x *.xls? *.mrt
Run Code Online (Sandbox Code Playgroud)
复制
xcopy .\*.as?x %destination% /SY
xcopy .\*.xls? %destination% /SY
xcopy .\*.mrt %destination% /SY
Run Code Online (Sandbox Code Playgroud)
我试图在 Visual Studio 的后期构建部分中插入这两种可能性。RoboCopy 退出并出现错误:错误 1 命令“ROBOCOPY source destination /S *.as?x *.xls? *.mrt”退出,代码为 1。某些文件已复制但复制到错误的文件夹 (_PublishedWebsites)。
xcopy 也会复制到错误的目录 (_PublishedWebsites) 并且也不会复制所有文件。
在命令行中,这两个命令都按预期工作。
我已经更新了我的 robocopy 命令:
ROBOCOPY $(MSBuildProjectDirectory) $(MSBuildProjectDirectory)\..\..\..\EDP\Web\Modules\Invoice\Web /S *.as?x *.xls? *.mrt
Run Code Online (Sandbox Code Playgroud)
现在文件被复制到正确的位置,但 robocopy 的返回码导致 Visual Studio 错误。
这里的帮助下,解决这个:
call ROBOCOPY $(MSBuildProjectDirectory) $(MSBuildProjectDirectory)\..\..\..\EDP\Web\Modules\Invoice\Web /S *.as?x *.xls? *.mrt
if %errorlevel% leq 1 exit 0 else exit %errorlevel%
Run Code Online (Sandbox Code Playgroud)
<ItemGroup>
<SourceFiles Include="$(MSBuildProjectDirectory)\**\*.js"/>
<SourceFiles Include="$(MSBuildProjectDirectory)\**\*.html"/>
<SourceFiles Include="$(MSBuildProjectDirectory)\**\*.css*"/>
<SourceFiles Include="$(MSBuildProjectDirectory)\**\*.png"/>
<SourceFiles Include="$(MSBuildProjectDirectory)\**\*.as?x"/>
</ItemGroup>
<Target Name="AfterBuild">
<Copy
SourceFiles="@(SourceFiles)"
DestinationFiles="@(SourceFiles->'%(MSBuildProjectDirectory)..\..\..\EDP\Web\Modules\DMS\Web\%(RecursiveDir)%(Filename)%(Extension)')"
/>
</Target>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3771 次 |
| 最近记录: |