У меня есть Windows Server 2008R2 с огромным файловым ресурсом видеофайлов, мне нужно запустить командную строку zip в пакетном скрипте, который:
а) Сжимайте / заархивируйте каждый видеофайл внутри каждой папки с соответствующим именем файла
б) затем сожмите / заархивируйте каждую папку с соответствующим именем
в) Сохранить исходную структуру папок
г) затем заархивируйте всю структуру в один zip-файл, содержащий всю структуру папок и zip-файлы видео внутри него.
это вообще возможно? Могу ли я использовать любую из вышеперечисленных программ через командную строку для пакетной обработки / PowerShell?
Сервер имеет 8 ГБ оперативной памяти с процессором Core i3.
Будем признательны за предложения и помощь
7zip поставляется с 7z.exe, который можно использовать в командной строке или в сценариях. Однако вам нужно будет использовать сценарий для архивирования структуры папок, который вы хотите. Я сделал нечто подобное, архивируя файлы журналов по месяцам, а затем по годам. Это некрасиво, но я могу опубликовать сценарий, если вы хотите его увидеть.
Предположим, что имя каталога \видео .
Создайте командный файл со следующими строками:
for /r \video %%a in (.) do @zip.exe -m "%%~pa\video" "%%~pa\*"
zip.exe -m -r Allvideo "\video\*"
Это создаст окончательный архив под названием allvideo.zip со структурой каталогов mirroring \ video. Там, где когда-то хранились видеофайлы, будет найден файл video.zip.
Для этого примера я использовал утилиту Zip, которую можно найти по адресу: http://www.info-zip.org/Zip.html
У вашего сервера достаточно мощности для этого действия, но вам может потребоваться следить за дисковым пространством. Я могу уменьшить размер примерно на 5% только за счет сжатия видеофайла.