Skip to main content
要递归删除目录及其所有内容,请使用 node:fs/promises 中的 rm。这相当于在 JavaScript 中运行 rm -rf
https://mintcdn.com/ikxin/RzFFGbzo0-4huILA/icons/typescript.svg?fit=max&auto=format&n=RzFFGbzo0-4huILA&q=85&s=a3dffd2241f05776d3bd25171d0c5a79delete-directory.ts
import { rm } from "node:fs/promises";

// 删除目录及其所有内容
await rm("path/to/directory", { recursive: true, force: true });

这些选项配置删除行为:
  • recursive: true - 删除子目录及其内容
  • force: true - 如果目录不存在,不抛出错误
你也可以不使用 force 来确保目录存在:
https://mintcdn.com/ikxin/RzFFGbzo0-4huILA/icons/typescript.svg?fit=max&auto=format&n=RzFFGbzo0-4huILA&q=85&s=a3dffd2241f05776d3bd25171d0c5a79delete-directory.ts
try {
  await rm("path/to/directory", { recursive: true });
} catch (error) {
  if (error.code === "ENOENT") {
    console.log("目录不存在");
  } else {
    throw error;
  }
}

更多文件系统操作,请参见 文档 > API > 文件系统