Gulp: рекурсивно копировать файл в каждый подкаталог - PullRequest
1 голос
/ 05 апреля 2019

У меня есть файл с именем foo, и я хочу скопировать его в каждый подкаталог.

Например, если текущая структура каталогов:

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

Затем послеоперация, это должно быть:

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

Как я могу сделать это, используя Gulp

Обратите внимание, что я не знаю, какие подкаталоги будут перед рукой, поэтому это нужно сделатьдинамически, и пути не могут быть жестко закодированы.

1 Ответ

1 голос
/ 05 апреля 2019

Вы можете сделать это, используя пакеты gulp-multi-dest и glob:

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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...