Könnyen konvertálhat minden Zip archívumot a 7z archívumba

Tartalomjegyzék:

Könnyen konvertálhat minden Zip archívumot a 7z archívumba
Könnyen konvertálhat minden Zip archívumot a 7z archívumba

Videó: Könnyen konvertálhat minden Zip archívumot a 7z archívumba

Videó: Könnyen konvertálhat minden Zip archívumot a 7z archívumba
Videó: How to Change Word 2007 defaults - YouTube 2024, Április
Anonim

A zip formátum a fájltömörítés szabványa, bár sok felhasználó és rendszer adminisztrátora inkább a 7z formátumot preferálja, mert sokkal jobb tömörítési arányokat kínál. A zip formátumnak van néhány dolga, mint például a sebesség (más tömörítési formátumokhoz képest) és az alkalmazás támogatása.

Tehát ahhoz, hogy mindkét világból a legjobbat hozzuk létre, létrehoztunk egy szkriptet, amely a zip fájlokat 7z fájlokká alakítja egyetlen parancssal, egy olyan eljárást, amelyet "mély archiválásnak" nevezünk.

Gyakorlati felhasználások

Tehát miért lenne szüksége erre a szkriptre, amikor először létrehozhatna 7z archívumokat? Íme néhány ok:

  1. Egyes alkalmazások csak zip formátumú archívumokat készíthetnek.
  2. Mivel a zip tömörítés gyorsabb, mint a 7z-es tömörítés, előfordulhat, hogy gyorsan létrehozni egy zip fájlt, majd "mélyen összenyomni" később.

Tekintsük ezt a szituációt:

FTP-t futtatsz, ahol az ügyfelek zip formátumban töltenek fel adatokat. A felhasználók az adatokat szükség szerint töltik le és használják fel, de ezeket a fájlokat egy ideig csak akkor szeretné megőrizni, ha a felhasználóknak újra szüksége van rájuk (ebben az esetben hős lehet a rendelkezésre állása miatt). Annak érdekében, hogy mentse a helyet, akkor konvertálni a zip archívumot 7z formátumban, és elrejtheti őket.

Alternatív megoldásként cserélje le az ügyfél által feltöltött adatokat a fenti forgatókönyvből a biztonsági másolat felhasználásával (vagy bármi másról, amire gondol), és láthatja, hogy sok gyakorlati alkalmazás van erre.

A script

@ECHO OFF ECHO Deep Archive ECHO Written by: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. REM Takes a Zip file and recompresses it as 7z archive. REM Script process: REM 1. Decompress the existing archive. REM 2. Compress the extracted files in 7z format. REM 3. (optional) Validate the new 7z file. REM 4. (optional) Delete the source archive. REM REM Usage: REM DeepArchive ZipFile REM REM Requirements: REM The 7-Zip command line tool (7za.exe) is in a location set in the PATH variable. REM REM Additional Notes: REM This script processes a single zip archive. REM To process all zip archives in a folder, use the ForFiles command from the command line: REM FORFILES /P 'pathtozipfiles' /M *.zip /C 'cmd /c DeepArchive @path' REM REM To run the archive compression/decompression as low priority background processes REM add this in front of the 7ZA commands (DO NOT add this in front of the validation 7ZA command): REM START /BelowNormal /Wait REM Adding the above command will use a new window to perform these operations. SETLOCAL EnableExtensions EnableDelayedExpansion REM Should the deep archive file be validated? (1=yes, 0=no) SET Validate=0 REM Compression level: 1,3,5,7,9 (higher=slower but more compression) SET CompressLevel=5 REM Delete source zip file on success? (1=yes, 0=no) SET DeleteSourceOnSuccess=1 REM ---- Do not modify anything below this line ---- SET ArchiveFile=%1 SET DeepFile=%ArchiveFile:.zip=.7z% SET tmpPath=%TEMP%%~nx1 SET tmpPathZip='%tmpPath%*' SET tmpPath='%tmpPath%' SET tmpFile='%TEMP%tmpDeepArchive.txt' IF NOT EXIST %tmpPath% ( MKDIR %tmpPath% ) ELSE ( RMDIR /S /Q %tmpPath% ) ECHO Extracting archive: %ArchiveFile% 7ZA x %ArchiveFile% -o%tmpPath% ECHO. ECHO Compressing archive: %DeepFile% 7ZA a -t7z -mx%CompressLevel% %DeepFile% %tmpPathZip% ECHO. IF {%Validate%}=={1} ( ECHO Validating archive: %DeepFile% 7ZA t %DeepFile% | FIND /C 'Everything is Ok' > %tmpFile% SET /P IsValid=< %tmpFile% IF !IsValid!==0 ( ECHO Validation failed! DEL /F /Q %DeepFile% ECHO. GOTO Fail ) ELSE ( ECHO Validation passed. ) ECHO. ) GOTO Success:Success IF {%DeleteSourceOnSuccess%}=={1} DEL /F /Q %ArchiveFile% ECHO Success GOTO End:Fail ECHO Failed GOTO End:End IF EXIST %tmpFile% DEL /F /Q %tmpFile% IF EXIST %tmpPath% RMDIR /S /Q %tmpPath% ENDLOCAL

linkek

Töltse le a DeepArchive Scriptet a SysadminGeek.com webhelyről

Töltse le a 7-Zip parancssori eszközt

Ajánlott: