# -*- coding: utf-8 -*- """删除已清空的旧独有目录(含递归空子目录)。仅删确认为空的目录,杜绝误删新结构内容。""" import os, shutil, sys ROOT = "docs" DRY = "--go" not in sys.argv # 旧独有目录(非规范 9 类,规范类为 01-产品文档/02-技术文档/03-测试文档/04-运维文档/05-运营文档/06-安全审计/07-项目管理/08-历史归档) OLD_ONLY = [ "01-产品设计", "02-产品需求", "03-技术架构", "04-原型设计", "06-测试质量", "08-安全审计", "09-部署运维", "10-项目管理", "11-历史归档", ] print("校验 9 个旧独有目录是否为空:") all_empty = True for d in OLD_ONLY: dp = os.path.join(ROOT, d) if not os.path.isdir(dp): print(" 跳过(不存在):", d); continue n = sum(1 for _ in os.walk(dp) if False) # placeholder files = [] for root, dirs, fnames in os.walk(dp): for f in fnames: files.append(os.path.join(root, f)) print(" %s : %d 个文件" % (d, len(files))) if files: all_empty = False for f in files[:10]: print(" 残留:", f) if not all_empty: print("\n!! 存在残留文件,终止删除,请人工核查。") raise SystemExit(1) print("\n✓ 全部为空,可安全删除" if not DRY else "\n[DRY] 以下将递归删除:") if DRY: for d in OLD_ONLY: print(" ", d) else: for d in OLD_ONLY: dp = os.path.join(ROOT, d) if os.path.isdir(dp): shutil.rmtree(dp) print(" 已删除:", d) print("\n删除完成。")