批量使用7-zip:首先将最小文件压缩到最大文件

时间:2011-03-16 09:33:54

标签: 7zip

我有一个运行7-zip的.bat文件来压缩目录中的所有文件。文件大小从1mb到500mb,有10个文件。每15分钟一个计划的备份程序将覆盖10个文件中的5个。这5个文件通常是最小的,也是最快的压缩文件,但7-zip首先从最大的文件开始,因此在15分钟内丢失了5个文件。如何让7-zip首先从最小的文件开始。任何帮助将不胜感激。

c:
cd "\Program Files\7-Zip"
7z a C:\WEBDATA C:\FILE1.BAK C:\FILE2.BAK C:\FILE3 C:\FILE4 C:\FILE5 etc...

1 个答案:

答案 0 :(得分:0)

如果所有文件都在同一目录中,您可以使用dir命令的排序功能一次一个地将文件添加到存档。

例如,如果要备份的文件位于名为“files”的子目录中:

for /f %%N in ('"dir /A-D /O:S /B files"') do (
   7z a backup.7z files/%%N
)

根据您的描述,这应该足够了,但如果文件位于不同的位置,您可能需要获得更好的体验。我自己没有尝试过,但我希望你可以遍历目录列表,将每个大小/文件名写入临时文件,然后在该文件上使用sort命令。

相关问题