# -*- coding: utf-8 -*- """把 test_package_remote.py 里的旧名字换成新的 ASCII 名字。 旧 -> 新: 1-被控端(电脑) -> 1-agent 2-服务器端(随身WiFi) -> 2-server 3-控制端(手表) -> 3-watch 先看这个.txt -> README.txt <各目录>/使用说明.txt -> README-agent.txt / README-server.txt / README-watch.txt """ from __future__ import annotations import sys from pathlib import Path TARGET = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote\_tests" r"\test_package_remote.py") RULES = [ ('top / "1-被控端(电脑)"', 'top / "1-agent"'), ('top / "2-服务器端(随身WiFi)"', 'top / "2-server"'), ('top / "3-控制端(手表)"', 'top / "3-watch"'), ('check("顶层说明在", (top / "先看这个.txt").is_file())', 'check("顶层说明在", (top / "README.txt").is_file())'), ('("顶层", top / "先看这个.txt")', '("顶层", top / "README.txt")'), ('("被控端", agent_dir / "使用说明.txt")', '("被控端", agent_dir / "README-agent.txt")'), ('("服务器端", relay_dir / "使用说明.txt")', '("服务器端", relay_dir / "README-server.txt")'), ('("控制端", watch_dir / "使用说明.txt")', '("控制端", watch_dir / "README-watch.txt")'), ] def main() -> int: text = TARGET.read_text(encoding="utf-8") changed = 0 for old, new in RULES: if old in text: text = text.replace(old, new) changed += 1 else: print(f" [跳过] 没找到: {old[:52]}") TARGET.write_text(text, encoding="utf-8", newline="\n") import ast try: ast.parse(text) print(f" 改了 {changed} 处,语法 OK") except SyntaxError as exc: print(f" 语法错误: 行 {exc.lineno}: {exc.msg}") return 1 # 复核 import re left = [m.group(0) for m in re.finditer( r'"[^"\n]*[\u4e00-\u9fff][^"\n]*"', text)] names = [x for x in left if any(t in x for t in (".txt", "1-", "2-", "3-"))] print(f" 含中文的文件名残留: {sorted(set(names)) if names else '无 ✓'}") return 0 if __name__ == "__main__": sys.exit(main())