如何忽略已压缩的文件并删除原始文件

如何忽略已压缩的文件并删除原始文件

我尝试使用 7zip 执行以下代码,但一旦运行批处理脚本,它就会继续压缩文件夹中已压缩的文件。有没有办法忽略 .zip 文件类型并在压缩后删除原始文件?任何帮助都非常感谢,谢谢。

代码:

FOR %%i IN ("C:\filepath....\*HAEC040.D*") DO "C:\Program Files\7-Zip\7z.exe" a  -mx "%%~i.zip" "%%i" 

截屏:

在此处输入图片描述

答案1

所有内容都在 7Zip 帮助文件中,在命令行版本下,或从命令行帮助(7z -h)中找到:

-ax[r[-|0]]{@listfile|!wildcard} : eXclude archives
-sdel : delete files after compression
-x[r[-|0]]{@listfile|!wildcard} : eXclude filenames

-mx[N] : set compression level: -mx1 (fastest) ... -mx9 (ultra)

因此你的 zip 命令看起来会像这样(顺便说一下,你在标志上省略了压缩级别的数字)mx

7z.exe a "%%~i.zip" "%%i" -mx1 -sdel -xr!*.zip 

测试留给用户练习。小心删除标记!在使用您关心的实际数据之前,请设置一个特定文件夹,使用虚拟数据进行测试。

相关内容