fs之递归删除文件和目录

const fs = require("fs");
const path = require("path");
function fn(url) {
  // 首先判断要删除的目录是否存在,如果存在则进入判断
  // console.log(fs.existsSync(url));//true
  if (fs.existsSync(url)) {
    // 读取要删除的目录,获取目录下的文件信息
    let files = fs.readdirSync(url);
    // 循环遍历要删除的文件
    files.forEach(file => {
      //   console.log(file);//1.text dir2
      // 将文件的名字和要删除的目录路径组合,得到要删除的文件的路径
      let filePath = path.join(url, file);
      //   如果是目录,继续遍历(递归遍历)
      if (fs.statSync(filePath).isDirectory()) {
        fn(filePath);
      } else {
        // 如果是文件,直接删除文件
        fs.unlinkSync(filePath);
      }
    });
    fs.rmdirSync(url); //删除所有的空目录
  }
}

fn("./dir1");

你可能感兴趣的:(nodejs)