7zip批处理压缩所有文件夹然后删除原始文件夹

时间:2018-05-12 16:15:29

标签: 7zip

我有一个批处理文件,它使用7zip压缩所有文件夹。

for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a "%%X.zip" "%%X\"

如何立即删除原始文件夹?

如果我可以像设置'solid block style'那样指定zip文件的大小,那也很棒

2 个答案:

答案 0 :(得分:1)

for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a "%%X.zip" "%%X\"
for /d %%X in (*) do RMDIR "%%X" /S /Q

这将按照你的要求行事。未创建备份,因此请确保在运行此命令之前已安全地复制了文件。在压缩文件夹后,它会以静默方式删除文件夹和子文件夹。

答案 1 :(得分:0)

我相信7zip开关是-sdel,可以在归档后删除文件,但是上述解决方案也可以!

for /D %%X in ("*") do "C:\Program Files\7-Zip\7z.exe" a "D:\Downloads\%%X.7z" "%%X\" -p"PASSWORD" -mhe -v100m -sdel

我正在使用上述命令使用密码和加密的标头将脚本根目录的每个子文件夹压缩到其自己的存档中,以拆分为100MB的块(%% X.7z.001,%% X.7z。 002等)(如果大于100MB),则在存档后删除原始文件。