【发布时间】:2019-12-20 20:36:45
【问题描述】:
我正在寻找一种将文件夹的内容复制到另一个文件夹的方法,或者甚至将文件夹替换为旧文件夹,但保留其名称。
感谢您的帮助。
【问题讨论】:
标签: node.js
我正在寻找一种将文件夹的内容复制到另一个文件夹的方法,或者甚至将文件夹替换为旧文件夹,但保留其名称。
感谢您的帮助。
【问题讨论】:
标签: node.js
首先通过npm install fs-extra在您的项目中安装fs-extra模块,然后按照以下步骤操作:
导入以下内容
var fs = require('fs');
var fs_Extra = require('fs-extra');
var path = require('path');
// 在这里声明你的路径
var sourceDir = path.join(__dirname, "../working");
var destinationDir = path.join(__dirname, "../worked")
//如果文件夹不存在则创建它
if (!fs.existsSync(destinationDir)){
fs.mkdirSync(destinationDir, { recursive: true });
}
//复制文件夹内容
fs_Extra.copy(sourceDir, destinationDir, function(error) {
if (error) {
throw error;
} else {
console.log("success!");
}
});
注意:源和目标文件夹名称不应相同。
【讨论】:
如果不创建,首先检查目标路径是否存在, 那么你可以使用 fs-extra 来复制文件/子目录。
var fs = require('fs');
var fse = require('fs-extra');
var sourceDir = '/tmp/mydir';
var destDir = '/tmp/mynewdir';
// if folder doesn't exists create it
if (!fs.existsSync(destDir)){
fs.mkdirSync(destDir, { recursive: true });
}
//copy directory content including subfolders
fse.copy(sourceDir, destDir, function (err) {
if (err) {
console.error(err);
} else {
console.log("success!");
}
});
【讨论】: