名为 Test_UL 的文件夹包含 Test_file_UL.exe , Test_file_UL.iso 和 Test_file_UL.txt 等文件。
我需要将 Test_file_UL.exe 和 Test_file_UL.iso 文件压缩到 Test.zip ,不包括 Test_file_UL.txt < / em>的
如何使用MSBuild执行此操作?
答案 0 :(得分:0)
您可以通过为所需项目创建ItemGroup,然后将该项目组传递给powershell cmdlet来执行此操作。
<ItemGroup>
<ZipFiles Include="Test_UL\Test_file_UL.exe" />
<ZipFiles Include="Test_UL\Test_file_UL.iso" />
</ItemGroup>
适用item groups的所有常规规则,因此您可以进行任何需要的过滤。
然后调用powershell来压缩文件:
<Target Name="CreateZip">
<Exec Command="PowerShell -NoProfile -Command Compress-Archive @(ZipFiles->'%(Identity)', ',') -DestinationPath $(ZipName)" />
</Target>
还有一些MSBuild扩展程序可以添加压缩/压缩目标,但我总是发现只需快速调用PowerShell就可以了。