我正在try 使用GULP将文件从一个文件夹复制到另一个文件夹:

gulp.task('move-css',function(){
  return gulp.src([
    './source/css/one.css',
    './source/other/css/two.css'

    ]).pipe(gulp.dest('./public/assets/css/'));
});

以上代码是复制one.css&two.csspublic/assets/css文件夹.

如果我使用gulp.src('./source/css/*.css'),它会将所有CSS文件复制到public/assets/css文件夹,这不是我想要的.

如何选择多个文件并保留文件夹结构?

推荐答案

要实现这一点,请指定base.

¶ base-指定相对于CWD的文件夹.默认值是全局开始的位置.用于在.dest()中保存时确定文件名


在您的情况下,它将是:

gulp.task('move-css',function(){
  return gulp.src([
      './source/css/one.css',
      './source/other/css/two.css'
  ],  {base: './source/'}) 
  .pipe(gulp.dest('./public/assets/'));
});

文件夹结构:

.
├── gulpfile.js
├── source
│   ├── css
│   └── other
│       └── css
└── public
    └── assets

Css相关问答推荐

使用 MUI 动态绘制多个边框

为什么标题中的特定 div 与 Odoo 13 中 PDF 中的页面重叠?

使用 CSS 无限期地闪烁两个不同持续时间的文本

创建一条淡出/在各个方向变得透明的线

reactjs - 容器中水平行的png图像

修复导航栏隐藏页面内容

Sass负变量值?

我们可以在 css 中定义 min-margin 和 max-margin、max-padding 和 min-padding 吗?

CSS 网格中的 justify-self、justify-items 和 justify-content 有什么区别?

如何使用 classes props 在 Material UI 中添加多个类?

通过 Bootstrap4 对列进行排序

Flexbox 中的第一个子元素全角

Bootstrap 4 响应式表格不会占用 100% 的宽度

Flexbox 列自底对齐

CSS 中的@apply 是什么?

Bootstrap 4 img-circle 类似乎不存在

使用 :after 在元素后添加空格 (" ")

CSS 中的 * 和 *|* 有什么区别?

Vue.js 在点击时切换类

为什么在 CSS3 中启用硬件加速会降低性能?