javascript 相对副本(递归)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 相对副本(递归)相关的知识,希望对你有一定的参考价值。
/**
* Copy files maintaining relative paths
*
* @param {String} fileGlob The pattern to match the desired files
* @param {String} from The current location
* @param {String} to The destination
* @return {Promise}
*/
function relativeCopy(fileGlob, from, to) {
return new Promise((resolve, reject) => {
glob(fileGlob, { cwd: from, nodir: true }, (err, files) => {
if (err) reject(err);
files.forEach(file => {
const origin = path.join(from, file);
const dest = path.join(to, file);
const data = fs.readFileSync(origin, 'utf-8');
recursiveMkDir(path.dirname(dest));
fs.writeFileSync(dest, data);
resolve();
})
})
});
}
/**
* Recursively create directories
*
* @param {String} dir The directory path to create
*/
function recursiveMkDir(dir) {
if (!fs.existsSync(dir)) {
recursiveMkDir(path.dirname(dir));
fs.mkdirSync(dir);
}
}
以上是关于javascript 相对副本(递归)的主要内容,如果未能解决你的问题,请参考以下文章
目录的递归副本
二叉树的递归遍历(Javascript)
PHP 递归文件/文件夹副本
递归文件/文件夹副本
用于AIR的递归目录副本
递归查找subversion工作副本并更新