如果匹配正则表达式,如何编写将删除特定文件夹中文件的任务?
假设我们有文件夹&some;' somedir'和其中的几个文件:
somedir/filename.txt
somedir/filename-good-0.0.1.txt
somedir/filename-0.0.2.txt
我想要一个删除此文件夹中与此模式匹配的所有文件的任务:
/.+-\d+\.\d+\.\d+\.txt/
即。 "文件名良好-0.0.1.txt"和" filename-0.0.2.txt"
有可能吗?
解决方案: 这是Grunt的配置:
clean: {
mytask: {
src: [ 'somedir/*.txt' ],
filter: function(filepath) {
var regex = /.+-\d+\.\d+\.\d+\.txt/g;
return regex.test(filepath);
}
}
}
感谢Ludovic V.提示。
答案 0 :(得分:1)
您可以使用自定义过滤器功能,如下所述:http://gruntjs.com/configuring-tasks#custom-filter-function和Javascript中的match
函数字符串。
答案 1 :(得分:0)
您可以使用grunt-contrib-clean
根据您提供的规则删除文件/文件夹。