transfer: 新增 list_files/download (流式+进度+Content-Disposition 文件名); CLI --list/--download/--out; 测试 57 项
This commit is contained in:
@@ -143,6 +143,7 @@ def main() -> int:
|
||||
ap = argparse.ArgumentParser(description="配置: 加载校验 / 生成模板")
|
||||
ap.add_argument("--init", action="store_true", help="生成默认 config.json 模板")
|
||||
ap.add_argument("--path", default=str(DEFAULT_CONFIG), help="配置文件路径")
|
||||
ap.add_argument("--set-server", metavar="URL", help="更新 server.url 并保存")
|
||||
args = ap.parse_args()
|
||||
|
||||
if args.init:
|
||||
@@ -173,6 +174,20 @@ def main() -> int:
|
||||
print(f"[config] 模板已生成: {path} (改 server.url 后即可用)")
|
||||
return 0
|
||||
|
||||
if args.set_server:
|
||||
path = Path(args.path)
|
||||
if not path.exists():
|
||||
print(f"[错误] 配置文件不存在: {path}, 先 --init 生成")
|
||||
return 1
|
||||
data = json.loads(path.read_text(encoding="utf-8"))
|
||||
data.setdefault("server", {})["url"] = args.set_server
|
||||
path.write_text(
|
||||
json.dumps(data, indent=2, ensure_ascii=False) + "\n",
|
||||
encoding="utf-8",
|
||||
)
|
||||
print(f"[config] server.url -> {args.set_server} ({path})")
|
||||
return 0
|
||||
|
||||
try:
|
||||
cfg = AppConfig(args.path)
|
||||
except (ConfigError, json.JSONDecodeError) as e:
|
||||
|
||||
Reference in New Issue
Block a user