【问题标题】:Getting a folder including all subdirectories and files as they are using GULP在使用 GULP 时获取包含所有子目录和文件的文件夹
【发布时间】:2016-06-25 09:47:25
【问题描述】:

我正在尝试使用 gulp-zip 压缩文件夹及其所有子目录和文件。我试过这些代码:

gulp.src('wp_plugins/zion_slider/')
    .pipe(zip('zion_slider.zip'))
    .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));

这个只是文件夹而不是子目录或文件

gulp.src('wp_plugins/zion_slider/**/*.*')
    .pipe(zip('zion_slider.zip'))
    .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));

这个只取文件和子目录而不是父目录。

由于我想压缩父文件夹以及子目录和文件,上述方法都不适合我。

请问有人可以推荐吗?

提前致谢。

【问题讨论】:

    标签: gulp gulp-zip


    【解决方案1】:

    gulp-src中设置基目录

    gulp.src('wp_plugins/zion_slider/*', {base: './'})
        .pipe(zip('zion_slider.zip'))
        .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));
    

    编辑

    没错,我误解了,弄错了球。这里试试这个。输出是一个名为 zion_slider.zip 的 zip 文件,其中包含带有所有文件和子目录的 zion_slider/ 文件夹。你可以玩弄这些路径以获得你想要的东西。例如,如果您希望 .zip 文件包含 zion_slider 文件夹,您可以使用 {base: wp_plugins/zion_slider }

    gulp.task('default', () => {
        gulp.src('wp_plugins/**/*', {base: './wp_plugins'})
            .pipe(zip('zion_slider.zip'))
            .pipe(gulp.dest('dist'));
    });
    

    编辑

        gulp.src('wp_plugins/zion_slider/**')
        .pipe(zip('zion_slider.zip'))
        .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));
    

    这也有效。

    【讨论】:

    • 它需要 'wp_plugins/zion_slider/all_the_files' 而不是 'zion_slider/all_the_files'。加上这不能获取子目录下的文件。
    • 看起来我的问题中的第二个 sn-p 也有效。我对代码还有其他一些问题。因此,我将其从问题中删除并添加到答案中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-20
    • 2011-10-30
    相关资源
    最近更新 更多