Код файла Bat для архивирования файлов огромного размера

Мы пытаемся заархивировать папку (размер ~100 ГБ) на нашем клиентском сервере через файл bat. Этот файл bat запускается с помощью задания autosys. Папка содержит файлы.dat и файл формата.523. Мы опробовали несколько вариантов, как показано ниже:
1. Использование утилиты PKZIP. Разархивируя файл, он говорит, что файлы повреждены и завершает процесс.
2. Использование Winzip. По завершении процесса zip, он открывает диалоговое окно "ДОБАВИТЬ ЗАВЕРШЕНО" и ждет, пока пользователь нажмет "ОК". Так как мы запускаем файл bat из autosys, мы не видим это диалоговое окно, когда пытаемся войти на сервер. У нас установлена ​​интерактивная версия Winzip на сервере, и мы не можем установить wzzip-версию winzip. Код, который мы использовали, выглядит следующим образом:

SET ZIPDIR="C:\Program Files (x86)\WinZip"
CALL %ZIPDIR%\WINZIP32.EXE -a -r %CEDEARCH%\BACKUP__%date:~-4,4%%date:~-10,2%%date:~-7,2%.zip D:\DATA\Test\*.*

после выполнения вышеприведенного кода ожидает нажатия "ОК", и из-за этого задание autosys не завершается. Я попытался добавить сценарий VBS после этого, чтобы просто нажать Enter, но он не работает.

VBS скрипт:

set oWShell = createobject("WScript.Shell")
WScript.Sleep 2000
oWShell.Sendkeys "{enter}"
  1. Используя 7Zip. После некоторых исследований мой коллега попытался использовать 7Zip, и zip and unzip работает отлично. Никакого ручного вмешательства не требуется. Единственная проблема заключается в том, что для ее завершения требуется около 7 - 9 часов. Это много времени. Неприемлимо.:(Винзип занимает около 3 часов.

    SET ZIPDIR = "C: \ Program Files \ 7-Zip" CALL% ZIPDIR% \ 7z.EXE a -r D: \ PES_PROD \ ARCHIVE \ Calc_Backup \ CALCITDBACKUP __% date: ~ -4,4 %% date: ~ -10, 2 %% дата:~-7,2%.zip D:\PES_PROD\DATA\CALC*.* -Mmt

Может ли кто-нибудь предложить лучшую идею или любой другой метод, о котором мы не думали. Спасибо и

0 ответов

Другие вопросы по тегам