In questo tutorial, tocchiamo la base sulla zip e decomprimi comandi e come vengono utilizzati in Linux. Zip è un comando utilizzato per creare un file di archivio o un file zippato. Ciò ti consente di comprimere i tuoi file e creare più spazio per altri file sul tuo disco rigido o unità rimovibile. Inoltre, zippare i tuoi file/directory li rende più portatili e più facili da caricare, scaricare o addirittura allegare e inviare via e-mail. L'opposto di zippare è decomprimere, e qui usiamo il comando unzip per decomprimere i file e accedervi individualmente.
Prima di iniziare a discutere dei comandi zip e unzip, vediamo come installare questi comandi dalla riga di comando,
Installa il comando zip &unzip su Ubuntu / Debian / Linux Mint
Apri il terminale ed esegui il seguente comando apt,
$ sudo apt install -y zip unzip or $ sudo apt-get install -y zip unzip
Installa il comando zip e unzip su CentOS / RHEL / Fedora
Apri il terminale ed esegui il comando sottostante,
$ sudo yum install -y zip unzip or $ sudo dnf install -y zip unzip
Immergiamoci e vediamo come comprimere e decomprimere file e directory in Linux con il comando zip e unzip con esempi.
Comando zip in Linux
Zippare un file è facile come ABC. La sintassi è abbastanza semplice:
$ zip OPTIONS file archive.zip
Alcuni punti da tenere in considerazione prima di procedere:
- Devi avere i permessi di scrittura sul file che stai zippando e il percorso della directory prima di zippare un file.
- Quando decomprimi o estrai un file, l'utente possiede il file/la directory.
Esempio 1) Zippare un singolo file e più file con il comando zip
Supponiamo che tu abbia un file di testo, report1.txt, nella directory corrente e desideri comprimerlo in un archivio chiamato report.zip.
Il comando per questa operazione sarà:
$ zip reports.zip reports1.txt
Inoltre, puoi comprimere più file contemporaneamente in un archivio come mostrato:
$ archivio zip.zip file1 file2 file3
Di nuovo, supponiamo di avere 3 file di testo report1.txt, report2.txt e report3.txt. Per comprimerli nell'archivio report.zip, esegui il comando:
$ zip reports.zip reports1.txt reports2.txt reports3.txt
Esempio 2) Aggiunta di un file a un archivio zip (-u)
A volte, potresti dover aggiungere un file a un archivio zip. Per farlo, usa il flag -u. Ad esempio, per aggiungere un altro file report4.txt, esegui:
$ zip -u reports.zip report4.txt
Esempio 3) Visualizzare il contenuto di un file zippato
Per visualizzare il contenuto di un file zippato, usa il comando come mostrato:
$ zipinfo archive.zip
Esempio 4) Zippare tutti i file nella directory corrente (* )
Se hai più file nella directory corrente, puoi comprimerli tutti in una volta usando il simbolo jolly come mostrato nella sintassi seguente:
$ archivio zip.zip *
Ad esempio, per comprimere tutti i file nella directory home nell'archivio home.zip, eseguire il comando seguente. Assicurati di lavorare nella home directory.
$ zip home.zip *
Esempio 5) Elimina un file da un archivio (-d)
Per rimuovere un file da un archivio, invoca il flag -d. Ad esempio, per rimuovere report4.txt dal file zippato, esegui:
$ zip -d reports.zip reports4.txt
Esempio 6) Elimina i file dopo aver compresso (-m)
Come avrai notato, i file originali rimangono anche dopo averli compressi o archiviati.
Se preferisci sbarazzartene durante l'archiviazione e risparmiare spazio, invoca l'opzione -m durante l'archiviazione come mostrato:
$ zip -m reports.zip reports1.txt reports2.txt reports3.txt
Esempio 7) Come comprimere una directory (-r)
Finora abbiamo visto come comprimere i file. Spesso ti verrà assegnato il compito di zippare le directory poiché occupano più spazio per la maggior parte del tempo.
Per comprimere una cartella, utilizzare la sintassi seguente. L'opzione -r ha zippato la cartella in modo ricorsivo.
$ zip -r cartella archive.zip
Ad esempio, per comprimere i dati di una directory in un archivio data.zip, eseguire:
$ zip -r data.zip data
Come per i file, puoi anche comprimere più cartelle contemporaneamente come mostrato:
$ zip -r archivio.zip cartella1 cartella2 cartella3
Esempio 8) Comprimere un file in una destinazione diversa
Per comprimere un file in una destinazione diversa dalla directory corrente, specifica semplicemente il percorso dell'archivio compresso nella tua sintassi come mostrato:
$ zip /percorso/di/destinazione/file archivio.zip
Ad esempio, il file hello.txt viene archiviato nel file file.zip nel percorso Documenti/dati/vendite.
Esempio 9) Comprimi file e directory nei propri archivi
Se, per qualsiasi motivo, desideri comprimere file e directory nella directory corrente nei loro archivi zip individuali, usa il ciclo for come mostrato:
$ for i in *; do zip -r "${i%}.zip" "$i"; done
Ad esempio, l'esempio seguente comprime rispettivamente il file hello.txt e la cartella sales nei rispettivi archivi hello.zip e sales.zip.
Decomprimi il comando in Linux
Ora cambiamo marcia e concentriamoci sul comando decomprimi. Il comando viene utilizzato per decomprimere o decomprimere file e directory compressi. Diamo un'occhiata ad alcuni esempi di utilizzo del comando:
Esempio 1) Come visualizzare il contenuto di un file zippato (-l)
Prima di decomprimere un file o una directory, puoi visualizzare il contenuto dell'archivio utilizzando l'opzione -l come mostrato:
$ unzip -l archivio.zip
Ad esempio:
$ unzip -l data.zip
Esempio 2) Come visualizzare i contenuti dettagliati di un file zippato (-Z)
Per visualizzare informazioni più dettagliate sul file come i permessi dei file e la dimensione totale dei file nell'archivio, usa l'opzione -Z come mostrato:
$ unzip -Z data.zip
Esempio 3) Come decomprimere/decomprimere un file zippato (-d)
Nella sua sintassi di base e più semplice, la decompressione di un file zippato prende la sintassi seguente e si verifica nella directory di lavoro corrente.
$ decomprimi archivio.zip
Ad esempio:
$ unzip data.zip
Esempio 4) Decomprimere un file in un'altra directory
Per estrarre o decomprimere un archivio in una destinazione diversa, usa il flag -d e specifica il percorso di destinazione come mostrato
$ unzip archive.zip -d /percorso/di/destinazione/cartella
Ad esempio.
$ unzip data.zip -d /home/linuxtechi/Documents
Esempio 5) Decomprimere uno o più file da un archivio
Spesso avrai un file compresso con più file. Invece di decomprimere completamente l'archivio, puoi scegliere di estrarre solo uno o due file. Per ottenere ciò, specifica i file come mostrato nella sintassi:
$ decomprimi archivio.zip file1 file2
Ad esempio, per estrarre un file chiamato hello.txt dall'archivio home.zip esegui
$ unzip home.zip hello.txt
Inoltre, puoi estrarre il file in una cartella di destinazione diversa anziché nella directory corrente. Ad esempio, il comando seguente estrae il file hello.txt nella directory Documenti/dati/vendite.
$ unzip home.zip hello.txt -d Documents/data/sales
Esempio 6) Escludere alcuni file dalla decompressione (-x)
Proprio come puoi estrarre uno o più file specifici da un archivio, così puoi escludere determinati file dalla decompressione. Questo è possibile usando l'opzione ( -x) nella sintassi mostrata
$ decomprimi archivio.zip -x file1
Ad esempio, l'esempio seguente esclude i file file1.txt e file2.txt dall'estrazione.
$ unzip archive.zip -x file1.txt file2.txt
Esempio 7) Come eliminare l'output del comando unzip (-q)
Come avrai notato, i dettagli dell'operazione di decompressione che mostrano la posizione dell'estrazione e dei file estratti vengono stampati sul terminale. Per eliminare queste informazioni, usa l'opzione -q come mostrato:
$ unzip -q data.zip
Esempio 8) Come sovrascrivere file esistenti (-o)
Quando esegui il comando unzip due volte nella stessa directory, ti verrà chiesto se sostituire, ignorare l'estrazione o rinominare i file esistenti come mostrato nell'output di seguito.
Se vuoi sovrascrivere il file esistente, senza che ti venga richiesto, usa l'opzione -o come mostrato:
$ unzip -o data.zip
Esempio 9) Decomprimere più file
Infine, per decomprimere più file contemporaneamente, usa un carattere jolly nella sintassi mostrata:
$ unzip '*.txt'
Prendere nota della virgoletta singola che racchiude il parametro *.txt.
Conclusione
Questo ci porta alla fine di questa guida; abbiamo mostrato l'utilizzo dei comandi zip e unzip e le varie opzioni che puoi utilizzare. Per ulteriori informazioni sul loro utilizzo, non esitare a visitare le loro pagine man. Ci auguriamo che tu abbia una salda presa sull'utilizzo di entrambi i comandi e che tu possa comodamente comprimere e decomprimere i tuoi file.