Tutorial sul comando zip di Linux per principianti (5 esempi)

Come suggerisce il nome, il comando zip permette di creare archivi. In questo tutorial, discuteremo le basi dello zip usando alcuni esempi facili da capire. Ma prima di farlo, vale la pena ricordare che tutti gli esempi qui sono stati testati su una macchina Ubuntu 18.04 LTS.

Comando zip Linux

La linea di comando zip di Linux consente di impacchettare e comprimere (archiviare) i file. Ecco la sua sintassi:

zip archive_name list_of_files

Ecco come lo spiega la pagina man dello strumento:

zip is a compression and file packaging utility for Unix, VMS, MSDOS, OS/2, Windows 9x/NT/XP, 
Minix, Atari, Macintosh, Amiga, and Acorn RISC OS.
It is analogous to a combination of the Unix commands tar(1) and compress(1) and is compatible
with PKZIP (Phil Katz's ZIP for MSDOS systems).

Seguono alcuni esempi in stile Q&A che dovrebbero darti un’idea migliore su come funziona il comando zip.

Q1. Come usare il comando zip?

L’uso di base è abbastanza facile – basta fornire il nome del file zip e i file da comprimere come input. Ecco un esempio:

zip files.zip file1.txt file2.txt file3.txt

Quindi l’idea dietro questo comando è di comprimere i tre file .txt in un file .zip. Ecco l’output prodotto da questo comando:

adding: file1.txt (stored 0%)
adding: file2.txt (stored 0%)
adding: file3.txt (stored 0%)

E un file chiamato ‘files.zip’ è stato prodotto nella directory di lavoro corrente.

Q2. Come cancellare un file da un archivio (compresso)?

Questo può essere fatto usando l’opzione -d della linea di comando. Per esempio, per rimuovere il file3.txt dal file files.zip, ho eseguito il comando zip nel seguente modo:

zip -d files.zip file3.txt

Lo strumento mi ha notificato l’operazione di cancellazione attraverso il seguente messaggio:

deleting: file3.txt

Q3. Come aggiungere nuovi file a un file compresso (archivio) esistente?

Proprio come l’operazione di cancellazione viene effettuata tramite -d, nel caso in cui si vogliano aggiungere nuovi file a un file compresso esistente, è possibile farlo utilizzando l’opzione della linea di comando -u.

Ecco un esempio:

zip -u files.zip file3.txt file4.txt

Ecco i messaggi che questo comando ha prodotto in output:

adding: file3.txt (stored 0%)
adding: file4.txt (stored 0%)

Q4. Come fare in modo che zip cancelli i file originali dopo l’archiviazione?

Di default, i file originali non vengono cancellati anche dopo che zip crea un file compresso. Tuttavia, se vuoi, puoi forzare lo strumento a cancellare i file originali. Questo può essere fatto usando l’opzione della linea di comando -m.

Ecco un esempio:

zip -m files.zip file1.txt file2.txt file3.txt file4.txt

Questo comando ha creato file.zip in output cancellando tutti i file .txt nel processo.

Q5. Quali sono alcune altre opzioni di comando zip utili?

Un’opzione della linea di comando di cui avrai probabilmente bisogno è -x. Viene usata quando vuoi evitare che alcuni file vengano compressi. Quindi, quello che devi fare è specificare -x seguito dal nome del file compresso seguito dai nomi dei file che vuoi escludere.

Per esempio:

zip files.zip file2.txt

Questo comando comprimerà tutti i file presenti nella directory di lavoro corrente, tranne file2.txt.

Passando oltre, l’altra opzione della riga di comando che potresti richiedere è -r. Permette di comprimere ricorsivamente, qualcosa che è necessario quando si vogliono comprimere le directory (incluso, naturalmente, il loro contenuto).

Conclusione

Abbiamo appena grattato la superficie, poiché il comando zip offre anche molte altre caratteristiche. Una volta che hai finito di fare pratica con gli esempi che abbiamo discusso qui, puoi andare alla pagina man dello strumento per saperne di più.

Tutorial sul comando zip per principianti (5 esempi)