使用Node.js将文件夹内容复制到另一个文件夹

时间:2019-08-14 09:39:18

标签: node.js

我正在寻找一种将文件夹内容复制到另一个文件夹,或者甚至将该文件夹替换为旧文件夹但保留其名称的方法。

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

如果不创建目标路径,请首先检查该目标路径是否存在, 那么您可以使用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!");
  }
}); 

答案 1 :(得分:0)

首先通过执行fs-extra在项目中安装npm install 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 (err) {
  if (error) {
    throw error;
  } else {
    console.log("success!");
  }
}); 

注意:源文件夹和目标文件夹的名称不应相同。

相关问题