gulp的路径问题,路径通配符 ** * ,拷贝所有文件夹及其子文件夹下的文件

Posted IT甜言蜜语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gulp的路径问题,路径通配符 ** * ,拷贝所有文件夹及其子文件夹下的文件相关的知识,希望对你有一定的参考价值。

一、关于gulp在使用时的路径问题:

      我们在写gulp的任务时,有的人为了偷懒。或者为了快,想把目录下是所文件拷贝到服务器端的目录下。可以通配符 ** 和 *。注意,两个星号和一个星号都是通配符,不是敏感词汇的替换。


       如:

     gulp.task("copyfile",function(){

    gulp.src(".\\**\\*").pipe(gulp.dest("D:\\phpStudy\\WWW\\pl"));

      });

      表示把当前目录(项目的目录,也是gulpfile.js所在的目录)下的所有文件,所有文件夹下的文件,所有文件夹下的子文件夹下的文件全部统统拷贝到目录:D:\\phpStudy\\WWW\\pl 下。


     解释:

      .   点表示当前路径

     通配符:

     *  一个星号,匹配该路径段中0个或多个任意字符

     ** 两个星号,不但匹配该路径段中0个或多个任意字符。而且还匹配形如“tj/pl/ab”这样的字符串,其实就是子文件夹了。


所以,.\\**\\*  表示,当前路径下的所有文件(.\\**),已经当前文件夹下的子文件(.\\**)下的所有文件(*)。


以下是示例代码对应项目路径和服务器端路径

项目路径:


服务器路径:



再如:

     gulp.task("copyfile",function(){

    gulp.src("app\\**\\*").pipe(gulp.dest("D:\\phpStudy\\WWW\\pl"));

      });

      表示把app下的所有文件,所有文件夹下的文件,所有文件夹下的子文件夹下的文件全部统统拷贝到目录:D:\\phpStudy\\WWW\\pl 下。


所以,.\\**\\*  表示,当前路径下的所有文件(.\\**),已经当前文件夹下的子文件(.\\**)下的所有文件(*)。


以上是关于gulp的路径问题,路径通配符 ** * ,拷贝所有文件夹及其子文件夹下的文件的主要内容,如果未能解决你的问题,请参考以下文章

glob通配符

gulp基本操作

webpack入门

linux c++ 拷贝文件问题

gulp.spritesmith中的路径有什么问题?

gulp 的运作方式分析