UIE Meeting

giovedì 24 maggio ore 20,30 - Casa delle Associazioni

Home Guide Trucchi e trucchetti Tutta la compressione possibile

Mar

09

Mar

2010

Tutta la compressione possibile
Guide e Tutorial - Trucchi e trucchetti
Scritto da Stefano Teodorani   

Lavorando su server linux, mi è capitato spesso di dover installare pacchetti software via terminale.
Purtroppo non sempre questi pacchetti sono disponibili per la nostra distribuzione preferita e a volte capita di dover decomprimere files con estensioni misteriose.
Questo articolo è una piccola guida su come comprimere e decomprimere da linea di comando i formati compressi più conosciuti.
Sono sicuro che i vostri commenti mi aiuteranno a rendere ancora più completo questo piccolo prontuario.

.zip

Prima di vedere in pratica come usarlo, ricordo che zip, di default, aggiunge o rimpiazza i file quando vengono aggiunti agli archivi.

Zippare un file

zip ./nome_archivio.zip ./file.est

dopo aver dato invio il sistema ci risponderà con un messaggio che ci indicherà la percentuale di compressione, ad esempio: adding: file.est (deflated 79%)

Zippare una cartella

Aggiunge la directory templates ad archivio_templates.zip, se l’archivio non esiste viene creato

zip -r ./archivio_template.zip ./templates

I messaggi del comando saranno:

updating: templates/ (stored 0%)
adding: templates/faq.html (deflated 79%)
adding: templates/index.html (deflated 28%)

Unzippare

unzip nome_file.zip


NOTA: Col programma zip è possibile scompattare anche i file zippati autoestraenti (quelli che terminano in .exe)

.gz (gzip)

Gzip è una utility di compressione che, a differenza di zip, può solo comprimere file e non cartelle. Per poter comprimere cartelle si può utilizzare in combinazione col comando tar.

Comprimere file con gzip

gzip nome_file.est

Gzip comprime il file indicato e aggiunge l’estensione gz.

Decomprimere  archivi con .gzip

gzip -d file_compresso.gz

oppure

gunzip file_compresso.gz



.bz2 (bzip2)

bzip2 è un’altra utilità di sola compressione, più recente di gzip e riesce ad ottenere percentuali di compressioni più elevate.

Comprimere

bzip2 ./file.est

Decomprimere

bzip2 -d ./infile.bz2

oppure

bunzip2 ./infile.bz2

 

.tar

Creare archivi

tar -cvf nome_archivio.tar nome_cartella_da_comprimere

Estrarre archivi

tar -xvf archivio.tar

Listare il contenuto In questo caso non viene estratto il file dell’archivio

tar -tf archivio.tar

Il significato delle opzioni usate:

c: crea un archivio
f: specifica un file da estrarre o da creare
x: estrae un archivio
t: permette di mostrare il contenuto degli archivi
v: dà in output maggiori informazioni sui file compressi o decompressi

 

tar.gz e tar.bz2

tar è una storica utility di linux che serve solo ad archiviare, non riduce quindi lo spazio occuato dai file. gzip e bzip2 comprimono ma non archiviano. Coniugando l’uso delle due utility (basta aggiungere una z, gzip, o j, bzip2, alle opzioni del comando tar) possiamo comprimere anche cartelle (archivi).

Comprimere archivi con gzip (.tgz o tar.gz)

tar czvf nome_archivio.tgz [nome_cartella_da_archiviare]

Comprimere archivi con con bzip2 (.tar.bz2)

tar cjvf nome_archivio.bz2 nome_cartella_da_archiviare]

Decomprimere archivi creati con gzip (.tgz o tar.gz)

tar xvfz ./nome_archivio.tgz

Decomprimere archivi creati con bzip2 (.tar.bz2)

tar xjvf ./nome_archivio.tar.bz2

In entrambi i casi verrà conservato l’archivio iniziale.

Listare il contenuto degli archivi compressi

tar -ztf nome_archivio.tar.gz

Eliminare file scompattati per errore

Può capitare che scompattando un archivio esso metta tutti i TRECENTO file nella directory corrente e non in una sottodirectory. Per cancellare tutti questi file si può operare nel seguente modo:

tar -ztf nome_archivio.tar.gz | xargs rm

Con le opportune modifiche il comando può essere utilizzato anche in altri casi visti sopra.


.rar

Installazione

sudo apt-get install rar unrar

Decomprimere file .rar


unrar archivio.rar

Comprimere un file .rar

rar a archivio nome_file



.7z

Comprimere

7z a archivio nome_file

Decomprimere

7z e archivio.7z


           
Commenti (5)add comment

superlex said:

...
Ciao!
Molto utile, bravo! Me la salvo subito smilies/wink.gif
09 marzo 2010

Mirco said:

...
Per 7-zip se si vuole comprimere usando il profilo ultra e guadagnare un pochino di spazio si deve usare il comando:
7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on

Io mi sono creato un alias di nome 7zultra in questo modo non devo ricordarmi tutto il comando. Basta inserire questo nel file nascosto .profile che c'è nella propria cartella pricipale.

alias 7zultra="7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on"
10 marzo 2010

Alberto said:

...
Questa guida è proprio quello che ci voleva. Breve semplice e concisa. Grazie
10 marzo 2010

Riccardo said:

...
Molto utile grazie
10 marzo 2010

Santiago said:

...
aggiungo che esiste un altro formato. LZMA2.
l'ho imparato dal forum di arch:
Circa un mese fa, abbiamo aggiornato i nostri tool per supportare i pacchetti compressi con il formato xz, anche conosciuti come LZMA2. Comparato a gzip, questo formato diminuirà in modo considerevole la dimensione dei pacchetti; circa il 30% in meno o anche più in base al loro contenuto.
Credo che tar lo gestisca, ad ogni modo questo formato comprime tantissimo.
29 marzo 2010 | url

Lascia la tua opinione
Accorcia box | Allunga box
I filtri ti rompono? Iscriviti


busy
 

UIELinux, oltre il Rubicone (anche oltre i soliti luoghi comuni)
Joomla! è un software libero rilasciato sotto licenza GNU/GPL
UIElinux All UIELinux Blog UIELinux Guide UIELinux Progetti