19Aug

Tüm Zip Arşivlerini 7z Arşivlerine Kolayca Dönüştürme

Zip biçimi dosya sıkıştırma standardıdır, ancak bir çok kullanıcı ve sistem yöneticisi türü, daha iyi sıkıştırma oranları sunan 7z biçimini kullanmayı tercih etmektedir. Zip biçimi, hızı( diğer sıkıştırma formatlarına göre) ve uygulama desteği gibi bir takım şeyler için gidiyor.

Her iki dünyanın en iyisini elde etmek için, zip dosyalarınızı tek bir komutla 7z dosyalara dönüştürecek bir betik hazırladık. Bu işlemi "derin arşivleme" olarak adlandırıyoruz.

Pratik Kullanımlar

Peki neden sadece 7z arşivlerini oluşturabildiğinizde bu betik istersiniz?İşte birkaç nedeni:

  1. Bazı uygulamalar sadece zip biçimi arşivleri üretebilir.
  2. Zip sıkıştırması 7z sıkıştırmasından daha hızlı olduğundan, hızlı bir şekilde bir zip dosyası üretmek ve daha sonra "sıkıştırmak" isteyebilirsiniz.

Bu senaryoyu düşünün:

Müşterilerin zip formatında veri yükleyebildiği bir FTP sitesi çalıştırıyorsunuz. Kullanıcılarınız daha sonra verileri gerektiği gibi indirip kullanıyor ancak siz kullanıcılarınızın tekrar ihtiyaç duymaları durumunda bu dosyaları bir süre saklamak istiyorsunuz( bu durumda bunları hazır bulundurmak için bir kahramanınız var).Bir miktar yerden tasarruf etmek için, zip arşivlerini 7z formatına dönüştürebilir ve uzakta saklayabilirsiniz.

Alternatif olarak, yukarıdaki senaryodaki müşteri tarafından yüklenen verileri yedeklenmiş kullanıcı verileriyle( veya aklınıza gelecek her şeyle) değiştirin ve bunun için birçok pratik uygulama olduğunu görebilirsiniz.

Senaryo

@ECHO OFF ECHO Derin Arşiv ECHO Yazan: Jason Faulkner ECHO SysadminGeek.com ECHO.EKO.REM Zip dosyası alır ve 7z arşivi olarak yeniden sıkıştırır. REM Komut dosyası işlemi: REM 1. Mevcut arşivin sıkıştırmasını kaldırın. REM 2. Ayıklanan dosyaları 7z formatında sıkıştırın. REM 3.( isteğe bağlı) Yeni 7z dosyasını doğrulayın. REM 4.( isteğe bağlı) Kaynak arşivini silin. REM REM Kullanımı: REM DeepArchive ZipFile REM REM Gereksinimler: REM 7-Zip komut satırı aracı( 7za.exe), PATH değişkende ayarlanmış bir konumdadır. REM REM Ek Notlar: REM Bu betik tek bir zip arşivi işlemektedir. REM Bir klasördeki tüm zip arşivlerini işlemek için komut satırından ForFiles komutunu kullanın: REM FORFILES / P "pathtozipfiles" / M *. zip / C "cmd / c DeepArchive @path" REM REM Arşiv sıkıştırma / açma işlemini çalıştırmak içindüşük öncelikli arka plan işlemleri olarak REM bunu 7ZA komutlarının önüne ekleyin( bunu 7ZA doğrulama komutunun önüne eklemeyin): REM START / BelowNormal / Bekle REM Yukarıdaki komutu eklemek, bu işlemleri yapmak için yeni bir pencere kullanacaktır. SETLOCAL EnableExtensions EnableDelayedExpansion REM Derin arşiv dosyasının doğrulanması gerekir mi?(1 = evet, 0 = hayır) SET Validate = 0 REM Sıkıştırma düzeyi: 1,3,5,7,9( daha yavaş = daha yavaş fakat sıkıştırma) SET CompressLevel = 5 REM Başarıyla kaynak zip dosyasını silinsin mi?(1 = evet, 0 = hayır) SET DeleteSourceOnSuccess = 1 REM ---- Bu satırın altındaki herhangi bir şey değiştirmeyin ---- SET ArchiveFile =% 1 SET DeepFile =% ArchiveFile:. zip =. 7z% SET tmpPath =%TEMP %% ~ nx1 SET tmpPathZip = "% tmpPath% *" SET tmpPath = "% tmpPath%" SET tmpFile = "% TEMP% tmpDeepArchive.txt" DEĞİL EXIST% tmpPath%( MKDIR% tmpPath%) ELSE( RMDIR / S/ Q% tmpPath%) ECHO Ayıklanan arşiv:% ArchiveFile% 7ZA x% ArchiveFile% -o% tmpPath% ECHO.ECHO Sıkıştırma arşivi:% DeepFile% 7ZA a -t7z -mx% CompressLevel %% DeepFile%% tmpPathZip% ECHO.IF{ % Validate%} =={ 1}( ECHO Doğrulama arşivi:% DeepFile% 7ZA t% DeepFile% | FIND / C "Her şey tamam" & gt;% tmpFile% SET / P IsValid = & lt;% tmpFile% IF!ELSE( ECHO Onayı geçti.) ECHO.) GOTO Başarı Başarı IF{ % DeleteSourceOnSuccess%} =={ 1} DEL / FALSE == 0( ECHO Doğrulama başarısız! DEL / F / Q% DeepFile% ECHO GOTO Hatası)F / Q% Arşiv Dosyası% ECHO Başarı GOTO Bitir: Arıza ECHO Başarısız GOTO Bitir: Bitir EĞER EXIST% tmp Dosyası% EĞLENCE% tmp Dosyası% EĞLENCE% tmpPath% RMDIR / S% QRPath% ENDLOCAL

Bağlantıları

Download DeepArchiveScript from SysadminGeek.com

İndir 7-Zip Komut Satırı Aracı