2012-02-24 5 views
2

많은 * .xml 파일이있는 폴더가 있습니다.MsBuild 디렉토리의 모든 파일을 Zip 파일로 압축

모든 파일을 별도의 zip 파일로 압축해야합니다. file3.xml

msbuild를 한 후

file1.xml - - - - - file2.xml : 예

- file1.zip - file2.zip - file3.zip

참고 I 하나의 ZIP 내에 모든 파일을 압축 할 필요가 없으며 폴더 내의 .xml 파일 수는 매번 다를 수 있습니다.

어쨌든 자동화 된 msbuild 작업으로이 작업을 수행 할 수 있습니까?

미리 감사드립니다.

답변

3

에서 Zip task을 사용하십시오. 그런 다음 MSBuild 타겟을 다음과 같이 지정할 수 있습니다.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="ZipFiles"> 

    <UsingTask TaskName="MSBuild.ExtensionPack.Compression.Zip" 
      AssemblyFile="..\MSBuildExtensionPack\Releases\4.0.4.0\MSBuild.ExtensionPack.dll" /> 

    <Target Name="ZipFiles"> 
    <ItemGroup> 
     <FilesToZip Include="xmls\**\*.xml"/> 
    </ItemGroup> 

    <Message Text="Zipping '%(FilesToZip.Identity)'" Importance="high" /> 
    <MSBuild.ExtensionPack.Compression.Zip TaskAction="Create" 
              CompressFiles="%(FilesToZip.FullPath)" 
              ZipFileName="%(FilesToZip.Filename).zip" 
              RemoveRoot="%(FilesToZip.RootDir)%(FilesToZip.Directory)" /> 

    </Target> 

</Project> 
+0

우수. 감사합니다 KMoraz! –

관련 문제