本帖最后由 aloha20200628 于 2024-7-16 19:49 编辑
回复 1# 20060126
经实测可知 7z(例如r19+版本均可)支持同一压缩包内并存 ‘有/无’ 密码的文件,只须分别压入即可。
以下代码假设被排除的文本文件 ".\abc\xyz.txt" 位于当前目录下某一子目录 ".\abc\" 中(须楼主据实况修正)
代码第6行对当前目录下的每个子目录完成有密码的*.*文件全压缩(不保留目录结构),但排除 ".\abc\xyz.txt"
代码第7行单独无密码压缩 ".\abc\xyz.txt" 至对应子目录的压缩包 ".\abc.7z"(须楼主据实况修正)
- @echo off &setlocal
- set z7F="D:\Program Files\7-Zip\7z.exe"
- set pw="123456"
- ::须根据实况修正下行中的abc和xyz的取值
- set txtF=".\abc\xyz.txt" &set zF=".\abc.7z"
- for /d %%d in (*) do %z7F% a -t7z "%%d.7z" -x!%txtF% -p%pw% -y ".\%%d\*">nul
- %z7F% a -t7z %zF% -y %txtF%>nul
- endlocal&pause&exit/b
复制代码
|