如何在Gulp src和dist中将文件从**目的地复制到另一目的地?

如何在Gulp src和dist中将文件从**目的地复制到另一目的地?,gulp,src,base,Gulp,Src,Base,我有一些问题,不能直接回答这个问题。 我的文件夹结构如下: modules/**/views/**/*.html 模块/购物车/视图/模板/ 模块/购物车/视图/内容/ 模块/购物车/视图/内容/foo/ 我想移动它们,这样它们就会变成这样: modules/**/views/**/*.html 视图/模板/ 视图/内容/ 视图/内容/foo/ 我已经试过base:和cwd:了 { base: 'modules/**/views/**' } 也有。等等。。但不能让它与两个**一起工

我有一些问题,不能直接回答这个问题。 我的文件夹结构如下:

modules/**/views/**/*.html
  • 模块/购物车/视图/模板/
  • 模块/购物车/视图/内容/
  • 模块/购物车/视图/内容/foo/
我想移动它们,这样它们就会变成这样:

modules/**/views/**/*.html
  • 视图/模板/
  • 视图/内容/
  • 视图/内容/foo/
我已经试过base:和cwd:了

{ base: 'modules/**/views/**' }
也有。等等。。但不能让它与两个**一起工作我不想要第一个**只需要第二个**的文件和它的文件夹


有线索吗?它真的有用吗?尝试了

我通过使用gulp重命名找到了解决方案。 不确定这是不是最好的,但效果不错。 我分道扬镳。获取第一个用户的名称** 将其重命名为空值,与视图相同

return gulp.src(config.vSrc)
        .pipe(rename(function(path) {
            var splitedPath = path.dirname.split('\\');
            var moduleName = splitedPath[0];
            path.dirname = path.dirname.replace(moduleName, '').replace('views', '');
            gutil.log(path.dirname);
        }))
        .pipe(gulp.dest("Views"));

要更新这个答案,现在一个好方法是使用。它非常擅长从文件夹层次结构中提取特定文件夹。我相信在OP的情况下,他想要的是:

gulp.src(['config.vSrc'])
  .pipe(flatten({ subPath: [3] }))
  .pipe(gulp.dest('Views'));
这应该是第四个文件夹,等等。您可能需要以下语法:

子路径:[3,]如果不进行测试,我不确定这一点