Muunna kaikki Zip-arkistasi helposti 7z-arkistoon

Sisällysluettelo:

Muunna kaikki Zip-arkistasi helposti 7z-arkistoon
Muunna kaikki Zip-arkistasi helposti 7z-arkistoon

Video: Muunna kaikki Zip-arkistasi helposti 7z-arkistoon

Video: Muunna kaikki Zip-arkistasi helposti 7z-arkistoon
Video: New Nepali Movie - " Mukhauta " Full Movie || Rajesh Hamal, Dayahang, Saugat, Nisha || Latest Movie - YouTube 2024, Marraskuu
Anonim

Zip-formaatti on standardi tiedostonpakkaamiseksi, mutta monet käyttöjärjestelmät ja järjestelmän ylläpitäjät haluavat käyttää 7z-muotoa, koska se tarjoaa huomattavasti paremmat pakkaussuhteet. Zip-muodossa on muutama asia, kuten nopeus (suhteessa muihin pakkausmuotoihin) ja sovellustuki.

Jotta saisimme molempien maailmojen parhaat puolet, olemme luoneet komentosarjan, joka muuntaa zip-tiedostot 7z-tiedostoiksi yhdellä komennolla, jota kutsumme "syvä arkistointi".

Käytännöllinen käyttö

Joten miksi tarvitset tämän käsikirjoituksen, kun voisit vain luoda 7z arkistoja aluksi? Seuraavassa on muutamia syitä:

  1. Tietyt sovellukset voivat tuottaa vain zip-muotoisia arkistoja.
  2. Koska zip-pakkaus on nopeampaa kuin 7 z: n pakkaus, voit halutessasi nopeasti tuottaa zip-tiedoston ja sen jälkeen syödä pakkauksen myöhemmin.

Harkitse tätä skenaariota:

Voit käyttää FTP-sivustoa, jossa asiakkaat lataavat tietoja zip-muodossa. Käyttäjät sitten lataavat ja käyttävät tietoja tarpeen mukaan, mutta haluat säilyttää nämä tiedostot jonkin aikaa vain siinä tapauksessa, että käyttäjät tarvitsevat niitä uudelleen (tässä tapauksessa olet sankari, jolla heidät ovat helposti saatavilla). Jotta tilaa säästyy, voit siirtää zip-arkiston 7z-muotoon ja peittää ne pois.

Vaihtoehtoisesti voit korvata käyttäjän ladatut tiedot edellä olevasta skenaariosta varmuuskopioidulla käyttäjädatalla (tai mitä muuta voit ajatella) ja näet, että tähän on monia käytännön sovelluksia.

Käsikirjoitus

@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

Linkit

Lataa DeepArchive Script osoitteesta SysadminGeek.com

Lataa 7-Zip Command Line Tool

Suositeltava: