Home > Posts > Portare automaticamente al massimo il livello di compressione di 7za

Portare automaticamente al massimo il livello di compressione di 7za

20 Ottobre 2006

Un consiglio veramente da nulla, ma che, magari, può essere utile a qualcuno.

La pagina di man di 7za, utility a riga di comando fornita da p7zip, port per GNU/Linux di 7-Zip, potente compattatore open-source, contiene un interessante esempio di utilizzo:

[...]
EXAMPLE 1
7za a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on archive.7z dir1 

adds all files from directory "dir1" to archive archive.7z
using "ultra settings"
[...]

La sintassi per ottenere un tale risultato non, è, però, esattamente “agevole”. Con un semplicissimo script di shell potremo godere dei benefici derivanti dalla super-compressione (e si sentono, credetemi) senza dover inserire righe di comando chilometriche.

  1. Avviare un editor con privilegi tali da poter salvare un file in /usr/local/bin, la directory destinate ai binari aggiunti dall’utente, ad esempio con:
    sudo nano  /usr/local/bin/m7za
  2. Scrivere il testo che segue, quindi salvare il file:
    #!/bin/bash
    PARAMETRI="$2 $3 $4 $5 $6 $7 $8 $9"
    SETTINGS="-t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on"
    7za $1 $SETTINGS  $PARAMETRI
  3. Rendere eseguibile il file con
    sudo chmod +x /usr/local/bin/m7za

Da ora in poi, sarà possibile utilizzare comandi come quello che segue

m7za a archivio.7z file1 file2 file3

per creare archivi che sfruttino al massimo le grandi potenzialità del motore di compressione di 7-Zip. Ricordate, però, che il formato .7z non può salvare informazioni sui permessi e sui proprietari dei file (cosa, a volte, fondamentale su sistemi *NIX) – se, però, avete necessità di backup più generiche, avrete a disposizione uno strumento molto potente.

  1. astro3
    29 Novembre 2006 alle 2:37 | #1

    hai provato kgb-archiver? è una bomba!

  2. 29 Novembre 2006 alle 9:01 | #2

    @astro3: Non lo conoscevo. Lo proverò per puro spirito di smanettamento :D (e anche per fare un confronto con 7-Zip), ma tieni presente che, mentre un utente Winzozz magari può averci WinRAR, e non gli devi andare a dire di scaricarsi un altro software (lo so, è triste, ma è cosi :( ), KGB Archiver non mi sembra sia supportato da altri che da se stesso. Correggimi se sbaglio.

I commenti sono chiusi.