Configuración 7z "ultra" para formato zip

14

Las configuraciones "ultra" de 7z para el formato .7z son:

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

¿Cuáles son las configuraciones "ultra" para el formato .zip (usando 7z)?

ᴜsᴇʀ
fuente

Respuestas:

17

Los valores predeterminados para la aplicación GUI file-roller también se pueden cambiar:


Tenga en cuenta que "ultra" puede no ser muy eficiente y solo tomará más tiempo comprimir sin producir una diferencia significativa en el tamaño del archivo resultante que la configuración predeterminada y también puede introducir incompatibilidades con otros programas.

Debería ser:

7z a -tzip -mx=9

De acuerdo con: archivo: ///usr/share/doc/p7zip-full/DOCS/MANUAL/switches/method.htm

Este es un enlace a su sistema de archivos, simplemente colóquelo en la barra de direcciones de su navegador web.

Si actualmente no está en una computadora donde está instalado el paquete, puede descargar el paquete DEB y buscarlo con otro archivador. Si mi memoria me sirve correctamente, casi el mismo archivo debería incluirse en el instalador de Windows.

Código Postal

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.

De manera predeterminada (si no se especifican los interruptores cl y cu), 7-Zip usa la codificación UTF-8 solo para nombres de archivos que contienen símbolos no admitidos por la página de códigos local.

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

Establece el nivel de compresión. x = 0 significa modo de copia (sin compresión).

Deflate / Deflate64 configuraciones:

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

x = 1 yx = 3 con el método Deflate establece el modo rápido para la compresión.

Configuración de BZip2:

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

fb = {NumFastBytes}

Establece el número de bytes rápidos para el codificador Deflate / Deflate64. Puede estar en el rango de 3 a 258 (257 para Deflate64). Por lo general, un gran número proporciona una relación de compresión un poco mejor y un proceso de compresión más lento. Un parámetro grande de bytes rápidos puede aumentar significativamente la relación de compresión para archivos que contienen secuencias largas e idénticas de bytes.

pass = {NumPasses}

Establece el número de pasadas para el codificador Deflate. Puede estar en el rango de 1 a 15 para Deflate y de 1 a 10 para BZip2. Por lo general, un gran número proporciona una relación de compresión un poco mejor y un proceso de compresión más lento.

d = {Tamaño} [b | k | m]

Establece el tamaño del diccionario para BZip2. Debe especificar el tamaño en bytes, kilobytes o megabytes. El valor máximo para el tamaño del Diccionario es 900000b. Si no especifica ningún símbolo del conjunto [b | k | m], el tamaño del diccionario se calculará como DictionarySize = 2 ^ Size bytes.

mem = {Tamaño} [b | k | m]

Establece el tamaño de la memoria utilizada para PPMd. Debe especificar el tamaño en bytes, kilobytes o megabytes. El valor máximo es 256 MB = 2 ^ 28 bytes. El valor predeterminado es 24 (16 MB). Si no especifica ningún símbolo del conjunto [b | k | m], el tamaño de la memoria se calculará como (2 ^ Tamaño) bytes. PPMd usa la misma cantidad de memoria para la compresión y descompresión.

o = {Tamaño}

Establece el orden del modelo para PPMd. El tamaño debe estar en el rango [2,16]. El valor predeterminado es 8.

mt = [apagado | en | {NORTE}]

Establece el modo multiproceso. Si tiene un sistema multiprocesador o multinúcleo, puede obtener un aumento de velocidad con este interruptor. Esta opción afecta solo la compresión (con cualquier método) y la descompresión de las secuencias BZip2. Cada subproceso en el modo de subprocesos múltiples utiliza 32 MB de RAM para el almacenamiento en búfer. Si especifica {N}, 7-Zip intenta usar N hilos.

LiveWireBT
fuente
Vuelve System error: E_INVALIDARG. Si quito m0=Deflatefunciona: 7z a -tzip -mx=9 -mfb=128 -mpass=10. ¿Por qué has elegido -mfb=128y -mpass=10? Gracias.
ᴇʀsᴇʀ
@user Usted solicitó configuraciones ultra y según la tabla, estas son las configuraciones ultra para desinflar, la compresión estándar en zip. Deberías mirar el archivo original, el formato aquí es limitado y no puedo manejar tablas hasta donde yo sé.
LiveWireBT
No te he explicado bien. [1] Con la opción m0=Deflateno funciona y vuelve System error: E_INVALIDARG. Si elimino esta opción (es decir 7z a -tzip -mx=9 -mfb=128 -mpass=10, funciona) [2] Para la segunda pregunta ("¿por qué has elegido -mfb=128y -mpass=10") ahora entiendo, miré las tablas.
ᴇʀsᴇʀ
1
@user -mx=9es equivalente a -mfb=128 -mpass=10, lo descubrí después de releer mi publicación. No sé por qué m0=Deflateno funciona. Creo que encontré este problema hace años en Windows y nunca lo resolví. Podría ser un error de documentación o simplemente un significado desactualizado que -tzipsolo admite un método por razones de compatibilidad. No sé, uno podría presentar un error o leer el código fuente para averiguar qué opciones son realmente compatibles.
LiveWireBT
1
Creo que la razón por la que su m0=Deflateopción no funcionó es porque tiene una sintaxis incorrecta. Creo que debería ser -mm=Deflate, no -m0=Deflate. Esa es la sintaxis en Windows en cualquier caso, y la sintaxis de acuerdo con lo que LiveWireBT ha publicado anteriormente. (Gracias por este LiveWireBt, por cierto).
David I. McIntosh