Gulp复制单个文件(src管道dest)与通配目录

时间:2015-06-06 02:06:16

标签: node.js gulp

我正在尝试使用gulp将特定文件src C:\Project\dir1\dirv-1.0.0\tools\file.exe复制到特定目录dest C:\Project\dir2\

dirv-1.0.0中的版本号将来可能会发生变化,因此我希望使用通配符版本号。

以下是我的任务(gulpfile.js位于C:\Project):

gulp.task('copy', function(){
    return gulp
        .src('dir1\dirv-*\tools\file.exe')
        .pipe(gulp.dest('dir2'));
});

这最终会生成以下目标文件:C:\Project\dir2\dirv-1.0.0\tools\file.exe。我想要的是C:\Project\dir2\file.exe

如何执行gulp复制任务,以便我可以将src路径通配符,但只将file.exe复制到dest路径?

1 个答案:

答案 0 :(得分:3)

使用gulp-flatten

var gulp = require('gulp');
var flatten = require('gulp-flatten');

gulp.task('default', function(){
    return gulp.src('./dir1/dirv-*1/test.txt')
        .pipe(flatten())
        .pipe(gulp.dest('dir2'));
});