19Aug

Jednostavno pretvorite sve vaše arhive zipova u arhive 7z

click fraud protection

Zip format je standard za komprimiranje datoteka, međutim mnogi korisnici sustava i administracija sustava preferiraju korištenje 7z formata jer nudi znatno bolje omjere kompresije. Zip format ima nekoliko stvari za to, kao što su brzina( u odnosu na druge oblike kompresije) i aplikacijsku podršku.

Da bismo dobili najbolje od oba svijeta, stvorili smo skriptu koja će vaše zip datoteke pretvoriti u 7z datoteke s jedinom naredbom, procesom koji zovemo "duboko arhiviranje".

Praktične namjene

Pa zašto bi vam trebala ova skripta kada biste mogli samo stvoriti arhive 7z za početak? Evo nekoliko razloga:

  1. Određene aplikacije mogu proizvesti samo arhive zip formata.
  2. Budući da zip kompresija je brža od kompresije od 7z, možda ćete htjeti brzo stvoriti zip datoteku, a kasnije ga "duboko komprimirati".

Razmotrite ovaj scenarij:

Pokrenuli ste FTP web mjesto gdje korisnici prenose podatke u zip formatu. Vaši korisnici zatim preuzimaju i upotrebljavaju podatke po potrebi, ali želite zadržati te datoteke neko vrijeme samo u slučaju da ih korisnici trebaju ponovno( u tom slučaju vi ste heroj za njihovu dostupnost).Da biste uštedjeli nešto prostora, možete pretvoriti zip arhive u 7z format i ukloniti ih.

instagram viewer

Alternativno, zamijenite prenesene podatke korisnika iz gore navedenog scenarija pomoću sigurnosnih kopija korisničkih podataka( ili bilo čega što se možete sjetiti) i možete vidjeti da postoji mnogo praktičnih aplikacija za to.

Skripta

@ECHO OFF ECHO Deep Archive ECHO Napisao: Jason Faulkner ECHO SysadminGeek.com ECHO.JEKA.REM preuzima zip datoteku i rekombinira ga kao 7z arhivu. REM Script proces: REM 1. Dekomprimirati postojeću arhivu. REM 2. Stisnite ekstrahirane datoteke u 7z formatu. REM 3.( neobavezno) Potvrđivanje nove 7z datoteke. REM 4.( opcionalno) Izbrišite arhivu izvora. REM REM Upotreba: REM DeepArchive ZipFile REM REM Zahtjevi: REM Alat naredbenog retka 7-Zip( 7za.exe) nalazi se u položaju postavljenoj u varijabli PATH.REM REM Dodatne napomene: REM Ova skripta obrađuje jedinstvenu zip arhivu. REM Da biste obradili sve zip arhive u mapi, upotrijebite naredbu ForFiles iz naredbenog retka: REM FORFILES / P "pathtozipfiles" / M *. zip / C "cmd / c DeepArchive @path" REM REM Za pokretanje arhive kompresije / dekompresijekao nisko prioritetni pozadinski procesi REM dodaj ovo ispred naredbi 7ZA( NEMOJTE dodati ovo ispred naredbe za potvrdu 7ZA): REM START / BelowNormal / Wait REM Dodavanje gore navedene naredbe koristit će novi prozor za obavljanje ovih operacija. SETLOCAL EnableExtensions EnableDelayedExpansion REM Ako je dubinska arhiva datoteka validirana?(1 = da, 0 = ne) SET Validate = 0 REM Kompresija: 1,3,5,7,9( viši = sporiji, ali više kompresije) SET CompressLevel = 5 REM Obriši izvorni zip datoteku na uspjeh?(1 = da, 0 = ne) SET DeleteSourceOnSuccess = 1 REM ---- Ne mijenjajte ništa ispod ove linije ---- SET ArchiveFile =% 1 SET DeepFile =% ArchiveFile:. zip =. 7z% SET tmpPath =%TmpPath% "SET tmpPath ="% tmpPath% "SET tmpFile ="% TEMP% tmpDeepArchive.txt "Ako ne postoji% tmpPath%( MKDIR% tmpPath%) ELSE( RMDIR / S/ Q% tmpPath%) ECHO Izdvajanje arhive:% ArchiveFile% 7ZA x% ArchiveFile% -o% tmpPath% ECHO.ECHO Kompresija arhive:% DeepFile% 7ZA a -7z -mx% CompressLevel%% DeepFile%% tmpPathZip% ECHO.IF{ % Validate%} =={ 1}( ECHO Validiranje arhive:% DeepFile% 7ZA t% DeepFile% | FIND / C "Sve je u redu">% tmpFile% SET / P IsValid = & lt;% tmpFile% IF!GOTO uspjeh: uspjeh IF{ % DeleteSourceOnSuccess%} =={ 1} DEL / F / Q% DeepFile% ECHO GOTO Fail) ELSE( ECHO ovjera je prošla) ECHOF / Q% ArchiveFile% ECHO uspjeh GOTO kraj: neuspjelo ECHO nije uspjelo GOTO završava: završava ako postoji% tmpFile% DEL / F / Q% tmpFile% ako postoji% tmpPath% RMDIR / S / Q% tmpPath% ENDLOCAL

Linkovi

Preuzmite DeepArchiveSkripta od SysadminGeek.com

Preuzmite 7-Zip Alat za naredbeni redak