1

我有一个运行 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...
4

1 回答 1

0

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

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

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

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

于 2012-09-12T15:31:35.683 回答