import { rm } from "node:fs/promises"; import { resolve } from "node:path"; const root = resolve(import.meta.dir, ".."); const patterns: Array<{ desc: string; glob: string }> = [ { desc: "构建产物", glob: "dist/**" }, { desc: "Bun 构建缓存", glob: ".build/**" }, { desc: "Bun 构建临时文件", glob: ".*.bun-build" }, ]; for (const { desc, glob } of patterns) { const entries = await Array.fromAsync(new Bun.Glob(glob).scan({ cwd: root, dot: true })); if (entries.length === 0) continue; for (const entry of entries) { const full = resolve(root, entry); await rm(full, { force: true, recursive: true }); console.log(`已清理 ${desc}: ${entry}`); } }