@dobesv/clean-dest

中文文档
1.3.8发布于 2025/05/07MITTypeScriptCommonJS近 30 天下载 1.5万

清除给源目录的目的地目录的 CLI

中文使用文档
文档目录16 节
  1. 安装
  2. 使用量
  3. 文件夹结构
  4. 自定义文件映射函数
  5. CLI 命令
  6. 国 际
  7. src-root
  8. dest-root
  9. base-pattern
  10. file-map
  11. ignore
  12. permanent
  13. dry-run
  14. verbose
  15. API 密码
  16. 监视模式

净干燥

GitHub

清除给源目录的目的地目录的 CLI 。 这将删除输出文件夹中的文件 在源文件夹中没有相应的文件(更多)。 帮助处理文件 当您的构建工具( 如 bael 或 tsc) 不自动删除输出时, 重命名和删除 已删除输入文件的文件.

默认情况下,它将文件保存在输出文件夹中,其名称与输入文件夹中的文件相同,但 您可以配置此选项, 通过映射源文件扩展名/后缀来保存额外文件 以输出文件扩展名/后缀.

最初设计时记有打字符,但可用于任何文件类型.

安装

$ npm install clean-dest

使用量

文件夹结构

│
└───scripts
│   │   clean-dest.js
│
└───src
│   │   file1.ts
│   │   file2.ts
│
└───dist
│   │   file1.js
│   │   file1.js.map
│   │   file1.d.ts
│   │   file2.js
│   │   file2.js.map
│   │   file2.d.ts

自定义文件映射函数

CLI 命令

clean-dest -s ./src -d ./dist --file-map ./scripts/clean-dest

国 际

src-root

光环 用于源文件的模式.

dest-root

目标根目录.

base-pattern

光环 要删除的模式,默认值是“最根”/**/*。 所有文件 匹配此模式将被删除, 除非它们被匹配到源文件, 或是被忽略 ignore 选项.

file-map

此识别文件在 dest-root ,应当根据当前文件保存 src-root 基于 从输入文件扩展到输出文件扩展的映射.

论据可以是用于绘图的JS模块,也可以是以特殊格式提供的绘图. 若为 参数匹配正则图案 /^.[a-z]/i 将解析为映射字符串, 否则 作为模块导入.

使用字符串

它可以被写成一系列与分号分隔的文件后缀映射. 每个映射都有输入文件 在冒号周围的扩展名和输出文件扩展名( e):) (中文(简体) ). 多个文件扩展名可与 逗号。 如果映射没有结号,那么输入和输出扩展就被认为是相同的.

输出文件名是通过将左侧找到的后缀替换为左侧的所有后缀来计算出来的 对.

实例:

  • .js,.ts:.js,.js.map,.d.ts: 用于任意 .js 或者说 .ts 找到的文件在 src-root,保存匹配文件 带有后缀 .js, (中文(简体) ), .js.map, (中文(简体) ), .d.ts 内 dest-root
  • .js:.js,.js.map;.ts:.js,.js.map,.d.ts编号: .js 文件在 src-root保存 .js 财务报告和审定财务报表 .js.map 文档中 dest-root用于 .ts 文件,同时保存 .d.ts 文档.
  • .js;.ts:.js,.js.map,.d.ts编号: .js 文件在 src-root保存 .js 文档中 dest-root用于 .ts 文档,保存 .js, (中文(简体) ), .js.map,以及 .d.ts 文档.

使用 js 模块

参数可以是导出输出文件夹中要保存哪些文件信息的 js 模块的路径 . 路径将使用 require 默认,所以如果它是本地模块,它应该使用相对路径.

如果模块导出一串或数组字符串,它们将被解析和处理,仿佛是 作为一组模式在命令行上提供.

如果模块导出一个对象,则对象的密钥被视为匹配的文件名后缀. 对象的值 可以是 (1) 字符串或字符串数组,以识别输出文件夹中使用的替换后缀,或 (2) 使用输出文件夹中的文件路径但带有原始文件扩展名的函数返回 一系列潜在的输出文件.

例如:

// ./scripts/clean-dest.js
module.exports = exports = {
    // Rename the file extensions from the 'ts' from the src folder to what we expect in the dest folder
    '.ts': (destFilePath) => [
        destFilePath.replace(/.ts$/, '.d.ts'),
        destFilePath.replace(/.ts$/, '.js'),
        destFilePath.replace(/.ts$/, '.js.map'),
    ]
};

ignore

permanent

使用 三角形,否则使用 垃圾。 。 。 .

dry-run

可选的测试运行到不实际删除匹配的文件 .

verbose

可选输出日志 .

API 密码

见 API 文件。 。 。 .

监视模式

使用 节点恶魔数字 :

nodemon --watch ./src -e ts --exec clean-dest -s ./src -d ./dist

版本与发布记录

@dobesv/clean-dest 共发布 6 个版本,首次发布于 2022/05/12;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.3.8latest2025/05/071.5 年前
1.3.72022/08/094 年前
1.3.62022/06/014 年前
1.3.52022/05/124 年前
1.3.42022/05/124 年前
1.3.32022/05/124 年前

关于 @dobesv/clean-dest 的常见问题

@dobesv/clean-dest 是什么?

清除给源目录的目的地目录的 CLI

如何安装 @dobesv/clean-dest?

在项目目录运行 npm install @dobesv/clean-dest,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 clean-dest,可以用 npx clean-dest 直接运行。

@dobesv/clean-dest 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@dobesv/clean-dest 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@dobesv/clean-dest 可以商用吗?

@dobesv/clean-dest 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@dobesv/clean-dest 的下载量有多少?

根据 npm 官方下载统计,@dobesv/clean-dest 在 2026/10/13 – 2026/11/11 这 30 天内被下载 15,345 次,日均约 512 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@dobesv/clean-dest 还在维护吗?

最新版本 1.3.8 发布于 2025/05/07(1.5 年前);至今共发布 6 个版本,其中过去 12 个月发布了 0 个;首次发布于 2022/05/12。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。