如何在压缩蛋糕中的目录文件时使用排除模式(.pdb,.xml)?

问题描述:

我想在我的zip包中排除一些格式文件,如PDB,XML和BMP文件。如何在压缩蛋糕中的目录文件时使用排除模式(.pdb,.xml)?

请帮我解决http://cakebuild.net/api/Cake.Common.IO/ZipAliases/B6C83EAE

注意内置的Zip别名只会创建一个标准的Zip文件而不是7zip,如果它只是您想要包含在您的存档中的程序集,则可以使用 Zip(DirectoryPath rootPath, FilePath outputPath, string pattern)过载。

用法示例:

Zip("./", "dllfiles.zip", "./*.dll"); 

如果你有几个不同的文件类型,那么我建议你创建一个要存档,然后只是压缩该目录的文物目录。

另一种方法是在cakebuild脚本中使用linq。沿着这些线路的东西:

var ignoredExts = new string[] { ".bmp", ".xml", ".pdb" }; 
var files = GetFiles("./bin/Release/*.*") 
    .Where(f => !ignoredExts.Contains(f.GetExtension().ToLower())); 
Zip("./", "cakeassemblies.zip", files);