如何在压缩蛋糕中的目录文件时使用排除模式(.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);