Форматът на zip е стандарт за компресиране на файлове, но много потребители на Power и системни администратори предпочитат да използват формата 7z, защото предлагат значително по-добри съотношения на компресия. Форматът на zip има няколко неща за него, като скорост (в сравнение с други формати за компресиране) и поддръжка на приложенията.
За да получите най-доброто от двата свята, създадохме скрипт, който ще конвертира вашите zip файлове в 7z файлове с една команда, процес, който наричаме "дълбоко архивиране".
Така че, защо бихте имали нужда от този скрипт, когато можете просто да създадете 7z архиви, за да започнете? Ето няколко причини:
Обърнете внимание на този сценарий:
Стартирате FTP сайт, където клиентите ви качват данни във формат zip. След това вашите потребители изтеглят и използват данните според нуждите, но вие искате да запазите тези файлове за известно време само в случай, че вашите потребители отново се нуждаят от тях (в този случай сте герой, за да имате достъп до тях). За да спестите малко пространство, можете да конвертирате zip архивите във формат 7z и да ги скриете.
Друга възможност е да замените качените от клиента данни от горепосочения сценарий с архивирани потребителски данни (или каквото и да е друго, което можете да си представите) и можете да видите, че има много практически приложения за това.
@ ECO OFF ECHO дълбоко архивиране ECHO Автор: Jason Faulkner ECHO SysadminGeek.com ECHO. Хуманитарна помощ. REM Получава Zip файл и го прекомпилира като 7z архив. REM Script процес: REM 1. Декомпресиране на съществуващия архив. REM 2. Компресирайте извлечените файлове във формат 7z. REM 3. (по избор) Потвърдете новия 7z файл. REM 4. (по избор) Изтрийте архива на източника. Използване на REM REM: REM DeepArchive ZipFile REM REM Изисквания: REM Инструментът за 7-Zip командния ред (7za.exe) е в място, зададено в променливата PATH. REM REM Допълнителни бележки: REM Този скрипт обработва един архив с цип. REM За да обработва всички zip архиви в папка, използвайте командата ForFiles от командния ред: REM FORFILES / P "pathtozipfiles" / M * .zip / C "cmd / c DeepArchive @path" REM REM За да стартирате архивната компресия / декомпресия като REM добавете това пред командите 7ZA (НЕ добавете това пред командата 7ZA за валидиране): REM START / BelowNormal / Wait REM Добавянето на горната команда ще използва нов прозорец за изпълнение на тези операции. SETLOCAL EnableExtensions EnableDelayedExpansion REM Трябва ли вашият архивен файл да бъде валидиран? (1 = да, 0 = не) SET Validate = 0 REM Ниво на компресия: 1,3,5,7,9 (по-високо = по-бавно, но повече компресия) SET CompressLevel = 5 REM (1 = да, 0 = не) SET DeleteSourceOnSuccess = 1 REM ---- Не променяйте нищо под този ред ---- SET ArchiveFile =% 1 SET DeepFile =% ArchiveFile: .zip = .7z% SET tmpPath =% TEMP %% ~ nx1 НАСТРОЙКА tmpPathZip = "% tmpPath% *" SET tmpPath = "% tmpPath%" SET tmpFile = "% TEMP% tmpDeepArchive.txt" Ако не съществува% tmpPath% (MKDIR% tmpPath% / Q% tmpPath%) Екстрахиращ архив на ECHO:% ArchiveFile% 7ZA x% ArchiveFile% -o% tmpPath% ECHO. ECHO Компресиращ архив:% DeepFile% 7ZA a -t7z -mx% CompressLevel%% DeepFile%% tmpPathZip% ECHO. АКО % Validate% == 1 (Валиден архив на ECHO:% DeepFile% 7ZA t% DeepFile% | FIND / C "Всичко е наред">% tmpFile% SET / P IsValid = <% tmpFile% IF! == 0 (Потвърждаване на ECHO не е успешно! DELETE / G / F / Q% DeepFile% ECHO.GOTO Fail) ELSE (ECHO потвърждение премина. Q% АрхивФийл% ECHO успех GOTO Край: Fail ECHO неуспешно GOTO Край: Край АКО съществува% tmpFile% DEL / F / Q% tmpFile% АКО съществува% tmpPath% RMDIR / S / Q% tmpPath% ENDLOCAL
Изтеглете скрипт DeepArchive от SysadminGeek.com
Изтеглете 7-Zip Command Line Tool