Как сжать несколько файлов в 3 файла на архив с помощью командного файла Windows?

У меня есть 100 файлов, которые выглядят так:

001.txt
002.txt
003.txt
004.txt
.....
100.txt

Я хочу сжать их так:

001.txt
002.txt ----> archive01.7z
003.txt
---------
004.txt
005.txt ----> archive02.7z
006.txt

Как я могу добиться этого с помощью командного файла Windows? Заранее спасибо: D


person WTFIsGoingOn    schedule 19.09.2011    source источник


Ответы (1)


person    schedule
comment
Если файлов 9, то этот скрипт работает отлично. Однако, если есть 8 файлов, третий архив будет включать в себя сам пакетный файл, и будет четвертый архив, содержащий все файлы и предыдущие 3 архива. Если файлов 10, последний файл будет проигнорирован. Я использовал 7za a output\!zipfilename! !filelist! для сжатия файлов. Я сделал что-то не так? - person WTFIsGoingOn; 21.09.2011
comment
Вы правы для своего тестового примера с 8 файлами. Он также принимает пакетный файл, потому что цикл for ищет ВСЕ файлы. Я изменил приведенный выше сценарий, чтобы отфильтровать пакетный файл от включения в список файлов для архивирования во время цикла. Для ситуации с 10 файлами, я думаю, вы, вероятно, забыли сделать zip в ПОСЛЕДНЕМ блоке условий if (строка rem your... в последнем блоке if). - person Arun; 21.09.2011