7z impostazioni "ultra" per il formato zip


14

Le impostazioni "ultra" 7z per il formato .7z sono:

7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on

Quali sono le impostazioni "ultra" per il formato .zip (usando 7z)?

Risposte:


17

Le impostazioni predefinite per il rullo di file dell'applicazione GUI possono anche essere modificate:


Tenere presente che "ultra" potrebbe non essere molto efficiente e richiederebbe più tempo per la compressione senza produrre differenze significative nella dimensione del file risultante rispetto alle impostazioni predefinite e potrebbe inoltre introdurre incompatibilità con altri programmi.

Dovrebbe essere:

7z a -tzip -mx=9

Secondo: file: ///usr/share/doc/p7zip-full/DOCS/MANUAL/switches/method.htm

Questo è un link al tuo filesystem, basta inserirlo nella barra degli indirizzi del tuo browser web.

Se al momento non ci si trova su un computer su cui è installato il pacchetto, è possibile scaricare il pacchetto DEB e sfogliarlo con un altro archiviatore. Se la mia memoria mi serve correttamente, quasi lo stesso file dovrebbe essere incluso nel programma di installazione di Windows.

Cerniera lampo

Parameter                     Default     Description
x=[0 | 1 | 3 | 5 | 7 | 9 ]    5           Sets level of compression.
m={MethodID}                  Deflate     Sets a method: Copy, Deflate, Deflate64, BZip2, LZMA, PPMd.
fb={NumFastBytes}             32          Sets number of Fast Bytes for Deflate encoder.
pass={NumPasses}              1           Sets number of Passes for Deflate encoder.
d={Size}[b|k|m]               900000      Sets Dictionary size for BZip2
mem={Size}[b|k|m]             24          Sets size of used memory for PPMd.
o={Size}                      8           Sets model order for PPMd.
mt=[off | on | {N}]           on          Sets multithreading mode.
em={EncryptionMethodID}       ZipCrypto   Sets a encryption method: ZipCrypto, AES128, AES192, AES256
tc=[off | on]                 off         Stores NTFS timestamps for files: Modification time, Creation time, Last access time.
cl=[off | on]                 off         7-Zip always uses local code page for file names.
cu=[off | on]                 off         7-Zip uses UTF-8 for file names that contain non-ASCII symbols.

Per impostazione predefinita (se gli switch cl e cu non sono specificati), 7-Zip utilizza la codifica UTF-8 solo per i nomi di file che contengono simboli non supportati dalla tabella codici locale.

x = [0 | 1 | 3 | 5 | 7 | 9]

Imposta il livello di compressione. x = 0 indica la modalità Copia (nessuna compressione).

Deflate / Deflate64 settings:

Level NumFastBytes    NumPasses   Description
1     32              1           Fastest
3                                 Fast
5                                 Normal
7     64              3           Maximum
9     128             10          Ultra

x = 1 e x = 3 con il metodo Deflate impostare la modalità veloce per la compressione.

Impostazioni BZip2:

Level Dictionary  NumPasses   Description
1     100000      1           Fastest
3     500000                  Fast
5     900000                  Normal
7                 2           Maximum
9                 7           Ultra

FB = {} NumFastBytes

Imposta il numero di byte veloci per l'encoder Deflate / Deflate64. Può essere compreso tra 3 e 258 (257 per Deflate64). Di solito, un numero elevato offre un rapporto di compressione leggermente migliore e un processo di compressione più lento. Un parametro di byte veloci di grandi dimensioni può aumentare significativamente il rapporto di compressione per i file che contengono sequenze di byte identiche lunghe.

passo = {} NumPasses

Imposta il numero di passaggi per l'encoder Deflate. Può essere compreso tra 1 e 15 per Deflate e da 1 a 10 per BZip2. Di solito, un numero elevato offre un rapporto di compressione leggermente migliore e un processo di compressione più lento.

d = {size} [b | k | m]

Imposta la dimensione del dizionario per BZip2. È necessario specificare la dimensione in byte, kilobyte o megabyte. Il valore massimo per la dimensione del dizionario è 900000b. Se non si specifica alcun simbolo dall'insieme [b | k | m], la dimensione del dizionario verrà calcolata come DictionarySize = 2 ^ Size bytes.

mem = {size} [b | k | m]

Imposta la dimensione della memoria utilizzata per PPMd. È necessario specificare la dimensione in byte, kilobyte o megabyte. Il valore massimo è 256 MB = 2 ^ 28 byte. Il valore predefinito è 24 (16 MB). Se non si specifica alcun simbolo dall'insieme [b | k | m], la dimensione della memoria verrà calcolata come byte (2 ^ Dimensione). PPMd utilizza la stessa quantità di memoria per compressione e decompressione.

O = {size}

Imposta l'ordine del modello per PPMd. La dimensione deve essere compresa nell'intervallo [2,16]. Il valore predefinito è 8.

mt = [off | su | {N}]

Imposta la modalità multithread. Se si dispone di un sistema multiprocessore o multicore, è possibile ottenere un aumento di velocità con questo interruttore. Questa opzione influenza solo la compressione (con qualsiasi metodo) e la decompressione dei flussi BZip2. Ogni thread in modalità multithread utilizza 32 MB di RAM per il buffering. Se si specifica {N}, 7-Zip tenta di utilizzare N thread.


Ritorna System error: E_INVALIDARG. Se rimuovo m0=Deflatefunziona: 7z a -tzip -mx=9 -mfb=128 -mpass=10. Perché hai scelto -mfb=128e -mpass=10? Grazie.
ᴇʀsᴇʀ

@utente Hai richiesto le impostazioni ultra e secondo la tabella queste sono le impostazioni ultra per deflate, la compressione standard in zip. Dovresti guardare il file originale, la formattazione qui è limitata e non posso gestire le tabelle per quanto ne so.
LiveWireBT

Non ho spiegato bene. [1] Con l'opzione m0=Deflatenon funziona e ritorna System error: E_INVALIDARG. Se rimuovo questa opzione (cioè 7z a -tzip -mx=9 -mfb=128 -mpass=10funziona) [2] Per la seconda domanda ("perché hai scelto -mfb=128e -mpass=10") ora ho capito, ho guardato le tabelle.
Sabato

1
@utente -mx=9equivale a -mfb=128 -mpass=10, l'ho capito dopo aver riletto il mio post. Non so perché m0=Deflatenon funziona. Penso di aver riscontrato questo problema anni fa su Windows e di non averlo mai risolto. Potrebbe essere un errore di documentazione o un significato semplicemente obsoleto che -tzipsupporta solo un metodo per motivi di compatibilità. Non lo so, si potrebbe presentare un bug o leggere il codice sorgente per scoprire quali opzioni sono effettivamente supportate.
LiveWireBT

1
Penso che il motivo per cui la tua m0=Deflateopzione non ha funzionato sia perché la sintassi non è corretta. Penso che dovrebbe essere -mm=Deflate, no -m0=Deflate. Questa è la sintassi su Windows in ogni caso, e la sintassi secondo quanto pubblicato da LiveWireBT sopra. (Grazie per questo LiveWireBt, tra l'altro).
David I. McIntosh,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.