Вы можете использовать модуль узла path
, чтобы получить имя подкаталога следующим образом:
const path = require('path');
const dirName = path.parse('./folderA/folderB').base // -> 'folderB'
И передать имя_папки zip()
:
const { task, src, dest } = require('gulp');
const path = require('path');
const zip = require('gulp-zip');
const glob = require('glob');
const subDirs = glob.sync('./lessons/*');
task('zipLessions', (done) => {
subDirs.forEach(subDir => {
const dirName = path.parse(subDir).base;
src(subDir + '/*')
.pipe(zip(`${dirName}.zip`))
.pipe(dest('./lessons'))
})
done()
})