我主要拥有grunt-contrib-copy所需的内容,因为我使用'rename'和'options.process'重命名文件名,以及文件中的内容。我缺少的最后一步是如何删除在此过程中重命名的原始文件。
这就是我所拥有的:
copy: {
rename: {
files: [
{
expand: true,
filter: 'isFile',
cwd: './',
src: ['**','!**/*.json','!**/.git/**','!**/node_modules/**','!**/*.sql','!README.md'],
dest: './',
rename: function(dest, src) {
var replaceValue = package.themeReplaceName;
var start = src.search(replaceValue);
var end = start + replaceValue.length;
if (start === -1) {
return src;
}
var returnVal = dest + src.substring(0, start) + package.projectTitle + src.substring(end);
grunt.log.writeln(returnVal);
return returnVal;
}
}
],
options: {
process: function (content, srcpath) {
var newContent = content.split(package.themeReplaceName).join(package.projectTitle);
grunt.log.writeln('Processing ' + srcpath + 'for ' + package.themeReplaceName + 'replacement...');
return newContent;
},
}
}
}
这会导致重命名我的所有文件,并替换其内容,但任何重命名的文件都会保留其原始文件。
我怎么能简洁地删除它们?
另外,如果你想获得很棒的分数,你可以在'src'中用适当的正则表达替换我的'重命名'方法,如果你愿意的话!
提前致谢, d
答案 0 :(得分:0)
您必须使用grunt-contrib-clean删除文件。
module.exports = function(grunt){
grunt.config.set('clean', {
options: { force: true },
clean: {
src: ["path/yourfile","path/yourfile2"]
}});