如何使用Gulp复制多个文件并保持文件夹结构 [英] How to copy multiple files and keep the folder structure with Gulp
问题描述
我正在尝试使用Gulp将文件从一个文件夹复制到另一个文件夹:
I am trying to copy files from one folder to another folder using 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.css
到public/assets/css
文件夹.
The above code is copying one.css
& two.css
to the public/assets/css
folder.
如果我使用gulp.src('./source/css/*.css')
,它将把所有CSS文件复制到public/assets/css
文件夹中,而这并不是我想要的.
And if I use gulp.src('./source/css/*.css')
it will copy all CSS files to the public/assets/css
folder which is not what I want.
如何选择多个文件并保持文件夹结构?
How do I select multiple files and keep the folder structure?
推荐答案
要实现此目的,请指定base
.
To achieve this please specify base
.
¶base -指定相对于cwd的文件夹.默认值是glob开始的位置.保存在
.dest()
¶ base - Specify the folder relative to the cwd. Default is where the glob begins. This is used to determine the file names when saving in
.dest()
在您的情况下,它将是:
In your case it would be:
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
这篇关于如何使用Gulp复制多个文件并保持文件夹结构的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!