Özel ayarlarla toplu yeniden paketleme arşivleri 7z'ye


1

Pek çok tasarım öğesinin arşivlenmesi ve sıkıştırılması üzerine çalışıyorum ve bunlar .zip ve .rar dosyalarında karıştırılıyor.

Tamirden ve test ettikten sonra bu ayarlar benim için en iyi sonuçları veriyor gibi görünüyor:

görüntü tanımını buraya girin

Bu soruya gönderilen bu güzel kod parçasını takip ediyorum ve istediğim ayarlara sahip olarak değiştirmeye çalışıyorum.

Ancak, .bat çalışmayacak.

Bu benim kodum:

for %%F in (*.rar) do ( "C:\Program Files\7-Zip\7z.exe" x -y -o"%%F_tmp" "%%F" * & pushd %%F_tmp & "C:\Program Files\7-Zip\7z.exe" a -y -r -t7z -m0=lzma2 -mx=9 -mfb=128 -md=512m -mmt:on ..\"%%~nF".7z * & popd & rmdir /s /q "%%F_tmp" )

Ek olarak, bu çalışmayı BOTH .zip ve .rar üzerinde aynı .bat dışında yapmanın bir yolu var mı? Şu anda 2 versiyonum var.


1
Tek bir çizgide sıkıştırmanın bir nedeni var mı? Ne çalışmıyor? Her iki dosya türünü de işlemek için ->for %%F in (*.rar *.zip) do ...
LotPings

Toplu iş dosyası bir satırda bile benim için çalışıyor, ancak System error: The parameter is incorrectikinci 7zip komutunu alıyorum .
Worthwelle

@ LotPings Komut satırı komut dosyası oluşturma konusunda yeniyim ve nereye döneceğimi bilemedim.
Ovaryraptor

Yanıtlar:


2

-mnt:onSeçenek, en azından birlikte, basitçe yanlıştır benim7-Zip 18.05 (x64)

Bu toplu iş:

:: Q:\Test\2018\10\11\SU_1365974.cmd
@Echo off
Set  z7="C:\Program Files\7-Zip\7z.exe"
Set "z7o=a -y -r -t7z -m0=lzma2 -mx=9 -mfb=128 -md=512m "

for %%F in (*.rar *.zip) do ( 
  %z7% x -y -o"%%F_tmp" "%%F" *
  pushd %%F_tmp
  %z7% %z7o% ..\"%%~nF".7z * ||(pause)
  popd 
  rmdir /s /q "%%F_tmp"
  Rem del "%%F"
)

(orijinal arşiv dosyasını silmek için Del'in önündeki Rem'i kaldırın)
Bu sonuçları çoğunlukla bir arduino kurulumundan elde edilen örnek zip dosyalarında üretti.

> dir
 Datenträger in Laufwerk A: ist RamDisk
 Verzeichnis von A:\

2018-10-11  20:22    533.163            1802-064.7z
2018-01-27  15:38               535.890 1802-064.zip

2018-10-11  20:22    265.703            Adafruit_Circuit_Playground-1.6.9.7z
2017-10-21  18:06               408.442 Adafruit_Circuit_Playground-1.6.9.zip

2018-10-11  20:22    294.031            Adafruit_Circuit_Playground-1.8.0.7z
2018-03-09  19:39               472.998 Adafruit_Circuit_Playground-1.8.0.zip

2018-10-11  20:22     24.213            Adafruit_NeoPixel-1.1.3.7z
2017-11-30  20:26                36.399 Adafruit_NeoPixel-1.1.3.zip

2018-10-11  20:22     27.574            Adafruit_NeoPixel-1.1.6.7z
2018-03-09  19:39                40.682 Adafruit_NeoPixel-1.1.6.zip

2018-10-11  20:22     18.280            APA102-2.0.0.7z
2017-09-09  14:30                25.694 APA102-2.0.0.zip

2018-10-11  20:22        794            archive.7z
2018-09-24  14:13                 1.582 archive.zip

2018-10-11  20:22    128.390            ArduinoJson-5.13.1.7z
2018-03-09  19:40               242.718 ArduinoJson-5.13.1.zip

2018-10-11  20:22     17.001            AS_BH1750-master.7z
2017-12-15  15:17                31.034 AS_BH1750-master.zip

2018-10-11  20:22    489.473            avrdude-6.3.0-arduino9-i686-w64-mingw32.7z
2017-11-23  20:43               645.974 avrdude-6.3.0-arduino9-i686-w64-mingw32.zip

2018-10-11  20:22     31.008            Bridge-1.7.0.7z
2018-01-05  22:14                61.431 Bridge-1.7.0.zip

2018-10-11  20:22     14.761            DallasTemperature-3.7.6.7z
2017-09-09  14:30                27.378 DallasTemperature-3.7.6.zip

2018-10-11  20:22     14.811            DallasTemperature-3.8.0.7z
2018-03-09  19:40                27.988 DallasTemperature-3.8.0.zip
                   =========  =========
                        .7z        .zip
Cumulated size:    1.859.202  2.558.210
percent of the other     73%       138%

Mmt: on, çoklu okuma özelliğini etkinleştirmek içindi. Veya 8/4 çekirdeği kullanmanın başka bir yolu var mı?
Ovaryraptor,

Yardımı doğru -mmt[N] : set number of CPU threadsokursam doğru kullanım seçeneklerindekine -mnt8benzer -mx9.
LotPings,

Öyleyse mx9'da zaten maksimum diş kullanıyor mu?
Ovaryraptor

Hiçbir sözdizimi -mx[N] : set compression level: -mx1 (fastest) ... -mx9 (ultra), [n]istenen numara ile değiştirilmek zorunda kaldığını göstermez . CPU ipliklerinin çekirdek / afinite ile olan ilişkisi farklı bir sorudur.
LotPings
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.