一、关于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 下。
所以,.\\* 表示,当前路径下的所有文件(.\),已经当前文件夹下的子文件(.\**)下的所有文件(*)。