上传统一卷模式: 全部文件32MB钉死切卷 (可压缩逐卷7z, 已压缩切卷+加密不7z), 去掉卷大小输入

This commit is contained in:
lou
2026-08-10 20:42:54 +08:00
parent d23f98b40d
commit 7e5dfa53ff
+11 -12
View File
@@ -109,26 +109,25 @@ def upload() -> None:
server = _clean(input(f"服务器 [{_default_server()}]: ")) or _default_server()
if not server.startswith(("http://", "https://")):
server = "http://" + server # 只输 IP:端口 自动补协议
chunk_size = _clean(input("卷大小 MB [10]: ")) or "10"
# 已压缩格式 (正则匹配后缀) 跳过 7z 直传; 其余走卷压缩模式
# 全部文件统一卷模式: 32MB 钉死切卷; 可压缩格式逐卷 7z, 已压缩格式切卷+加密不 7z
if not INCOMPRESSIBLE.search(path):
print("\n[1/3] 卷压缩: 16MB 流式切卷 + 逐卷 7z (mx=9) + 逐卷加密 ...")
print("\n[1/2] 卷压缩: 32MB 流式切卷 + 逐卷 7z (mx=9) + 逐卷加密 ...")
code = run([
"metadata.py", path, "--chunk-size", chunk_size,
"--file-name", os.path.basename(path), "--vol-compress", "16",
])
else:
print("[1/3] 已压缩格式, 跳过 7z 直传")
code = run([
"metadata.py", path, "--chunk-size", chunk_size,
"metadata.py", path, "--chunk-size", "32", "--vol-compress", "32",
"--file-name", os.path.basename(path),
])
else:
print("[1/2] 已压缩格式: 32MB 切卷 + 逐卷加密 (不 7z)")
code = run([
"metadata.py", path, "--chunk-size", "32", "--vol-compress", "32",
"--vol-no-7z", "--file-name", os.path.basename(path),
])
if code != 0:
print("[失败] 加密/分卷失败")
print("[失败] 切卷/加密失败")
return
print("\n[3/3] 上传 ...")
print("\n[2/2] 上传 ...")
init_json = path + ".init.json"
manifest = path + "_manifest.json"
code = run(["transfer.py", "--server", server, "--init", init_json, "--manifest", manifest])