Как рекурсивно архивировать каждый файл в каждой папке?
Я пытаюсь написать пакетный скрипт, который при запуске в папку берет все файлы в этой папке и упаковывает их в одну, затем берет остальные папки, просматривает их и делает то же самое, сохраняя файлы zip в каждой папке.,
Пример:
folder1
file1.ext
file2.ext
folder2
file3.ext
file4.ext
должен стать
folder1
file1.ext
file2.ext
folder1.zip containing file1.ext and file2.ext
folder2
file3.ext
file4.ext
folder2.zip containing file3.ext and file4.ext
2 ответа
WinRAR!
- Выбрать все папки
- Щелкните правой кнопкой мыши> Добавить в архив
- В настройках WinRAR перейдите на вкладку Файлы
- В нижнем разделе "Архив" выберите "Поместить каждый файл в отдельный архив".
- Хорошо.
Теперь каждая папка будет создана в новый архив RAR или Zip.
Если у вас есть опыт работы с UNIX, вы можете установить Cygwin и написать сценарий Bash, чтобы рекурсивно спускаться по каталогам, вызывая команду Cygwin zip или любую другую программу интерфейса командной строки zip.
Вы также можете установить Python, и сценарий для рекурсивного спуска еще проще. Каждый шаг может сделать вызов к программе почтового индекса CLI.
Возможно, вы можете использовать Powershell, но я не уверен, насколько легко можно использовать рекурсивный спуск.