仅复制Gulp中文件夹内的文件

时间:2014-09-03 18:30:59

标签: javascript node.js gulp

我正在尝试将文件夹中的所有文件复制到另一个文件夹的gulp任务

gulp.task('copy-fonts', ['unzip'], function() {
    return gulp.src('./gulp-tmp/**/fonts/*')
        .pipe(gulp.dest('fonts'));
});

问题是,gulp-tmp之后的目录名称有所不同,所以我必须在那里使用**

结果最终结果为/fonts/[randomFolderName]/fonts/[the files]

我想要的是/fonts/[the files]

2 个答案:

答案 0 :(得分:20)

使用gulp-flatten

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

gulp.src('./gulp-tmp/**/fonts/*')
  .pipe(flatten())
  .pipe(gulp.dest('fonts'));

答案 1 :(得分:5)

我使用没有外部库的简单代码,例如:

gulp.src('./src/fonts/*.{ttf,woff,eof,svg}')
  .pipe(gulp.dest('/build/fonts'));

或仅限html文件:

gulp.src('./src/templates/*.html')
  .pipe(gulp.dest('/build/templates'));