install
npm install copy-dir
usage
Sync:
var copydir = require('copy-dir');
copydir.sync('/my/from/path', '/my/target/path');
Async:
var copydir = require('copy-dir');
copydir('/my/from/path', '/my/target/path', function(err){
if(err){
console.log(err);
} else {
console.log('ok');
}
});
add a filter
When you want to copy a directory, but some file or sub directory is not you want, you can do like this:
Sync:
var path = require('path');
var copydir = require('copy-dir');
copydir.sync('/my/from/path', '/my/target/path', function(stat, filepath, filename){
if(stat === 'file' && path.extname(filepath) === '.html') {
return false;
}
if (stat === 'directory' && filename === '.svn') {
return false;
}
return true;
}, function(err){
console.log('ok');
});
Async:
var path = require('path');
var copydir = require('copy-dir');
copydir('/a/b/c', '/a/b/e', function(stat, filepath, filename){
//...
}, function(err) {
//...
});