Gulp:递归地将文件复制到每个子目录



我有一个名为foo的文件,我想将其复制到每个子目录。

例如,如果当前目录结构为:

- files
    - A/
    - B/
    - C/
    - D/
        - D1/
        - D2/

那么在操作之后,它应该是:

-files
    - foo
    - A/
        - foo
    - B/
        - foo
    - C/
        - foo
    - D/
        - foo
        - D1/
            - foo
        - D2/
            - foo

如何使用 Gulp 执行此操作

请注意,我事先不知道子目录会是什么,所以需要动态完成,路径不能硬编码。

您可以使用

gulp-multi-destglob包来完成此操作:

const gulp = require('gulp'),
    multiDest = require('gulp-multi-dest'),
    glob = require('glob');
function copyToAll(done) {
    glob('files/**/', (err, matches) => {
        if (err) {
            console.log('Error', err);
        } else {
            gulp.src('files/foo').pipe(multiDest(matches));
        }
        done();
    });
}
exports.default = copyToAll;

最新更新