2017-08-03 60 views
0

我有一個應該複製子目錄中的一些dll,如果這些文件以instace .Plugin結尾的gulp腳本。所以我有這樣的結構,我的解決方案:Gulp複製給定名稱的子目錄中的所有文件

enter image description here

現在我想我所有的組件與姓名權下Host.Plugin.dll結束了文件夾複製Plugins。這是我一飲而盡腳本至今:

gulp.task('pluginsCopy', function (cb) { 
    gulp.src('.\/**/bin/Debug/*.Plugins') 
     .pipe(newer("bin/Debug/Plugins/"))  
     .pipe(gulp.dest("bin/Debug/Plugins/")) 
}); 

正如你所看到的,我沒有與一飲而盡太多的經驗,但可能有人請給我一個提示?

謝謝!

+0

一個問題,爲什麼你的_gulp.dest_是*斌/調試/插件/ *和*不主機/插件*? – calazans

+0

@calazans對不起我的不好:更新了顯示文件夾結構的圖片 –

回答

0

你可以做這樣的事情:

var gulp = require('gulp'); 

    var bases = { 
    app: 'MySolution/', 
    dist: 'MySolution/bin/Debug/Plugins', 
    }; 

    var paths = { 
    text: '**/*.dll.txt' 
    }; 

    // Copy all other files to dist directly 
    gulp.task('copy', function() { 
    // Copy txt 
    gulp.src(paths.text, {cwd: bases.app}) 
    .pipe(gulp.dest(bases.dist)); 
    }); 
gulp.task('default', ['copy']); 
+0

感謝您的貢獻,但我沒有爲我工作。按照我的想法檢查我的答案。謝謝! –

0

想通了:

gulp.task('pluginCopy', function (cb) { 
    gulp.src('../*Plugin/bin/Debug/*.Plugin.dll') 
     .pipe(newer("bin/Debug/Plugins/"))  
     .pipe(rename({ dirname: '' })) 
     .pipe(gulp.dest("bin/Debug/Plugins/")) 
}); 
相關問題