Comandi GZIP, GUNZIP, ZCAT e TAR in Linux

Quando gestiamo ambienti Linux è molto importante conoscere il funzionamento e il ruolo di molti dei comandi che ci consentono di svolgere determinate attività in Linux. Oggi parleremo di tre in particolare che ci consentono di gestire tutto ciò che riguarda la compressione o l'espansione dei file.

1. GZIP


Questo comando gestisce la riduzione della dimensione del file utilizzando la codifica LZ77 (Lempel-Ziv). GZIP converte i file con le seguenti estensioni, senza perdere la loro qualità o proprietà, a seconda dell'ambiente utilizzato:

Estensioni GZIP

  • .gz: macchine virtuali
  • .z: MSDOS, Windows FAT o OS / 2

GZIP è l'abbreviazione di GNU ZIP che sostituisce il programma compress. Quando un nome di file è troppo lungo, GZIP lo tronca per una corretta amministrazione. Per impostazione predefinita, GZIP conserva il nome originale del file e tutte le sue proprietà senza alterarne alcuna, il che ne facilita la gestione e la corretta esecuzione. Quando abbiamo compresso un file con GZIP, possiamo decomprimerlo utilizzando una delle seguenti opzioni:

Decomprimi GZIP

  • gzip -d
  • zcat
  • gunzip

Nel caso in cui il nuovo nome del file da decomprimere non sia nella riga del file system corrente, ne verrà creato uno nuovo. GUNZIP sostituisce ogni file che comprimiamo il cui finale è .gz, -gz, .z, -z o _z e allo stesso modo riconosce le estensioni .tgz e .taz. Con questo comando abbiamo la possibilità di decomprimere i file che sono stati creati da uno dei seguenti strumenti:

 gzip, zip, compress, compress -H o pack.
GZIP rileva automaticamente queste estensioni ed esegue il loro processo.Possiamo estrarre più file Zip utilizzando unzip.

GZIP

 gzip [-acdfhlLnNrtvV19] [-S suffisso] [nome…]

2. ZCAT


Il suo utilizzo è identico a gunzip -c e la sua funzione principale è decomprimere un elenco di file tramite la riga di comando.

ZCAT decomprimerà il file se ha il numero magico indipendentemente dal fatto che sia o meno .gz. Inoltre con ZCAT abbiamo la possibilità di vedere il contenuto di un file compresso senza la necessità di decomprimerlo come se stessimo usando il comando cat.

ZCAT

 zcat [-fhLV] [nome …]

3. GUNZIP


Con GUNZIP abbiamo la possibilità di comprimere i file utilizzando la tecnologia Lempel-Ziv e consente a determinati file di avere una riduzione delle dimensioni fino al 60%, il che aiuta con il livello di spazio sul computer. GUNZIP conserva tutte le proprietà del file da comprimere o decomprimere.

GUNZIP

 gunzip [-acfhlLnNrtvV] [-S suffisso] [nome…]

4. CATRAME


Uno dei comandi per decomprimere o comprimere i file tramite il terminale in Linux è il comando tar, se vuoi informazioni su questo tipo in un terminale man tar e vedrai tutte le sue opzioni. Può comprimere una directory completa o un semplice file, può anche funzionare in modo ricorsivo (ad esempio, comprimendo tutto ciò che si trova all'interno di una directory specificata).

Comprimi i file usando tar
Dobbiamo eseguire la seguente istruzione:

 tar -czvf file.tar.gz nomefileAcompress
Significato dei parametri
  • -C: Crea un file
  • -z: Comprimi il file con gzip.
  • -v: Per attivare la modalità “verbose”. È facoltativo, ma può aiutarti.
  • -F: consente di specificare il nome del file.

Vediamo un esempio, se vogliamo comprimere una cartella chiamata Solvetic con nome compressoSolvetic:

 tar -czvf compresso Solvetic.tar.gz Solvetic

Decomprimi i file usando tar
Dobbiamo eseguire la seguente istruzione:

 tar -xzvf compressfile.tar.gz
I parametri sono gli stessi, tranne che -c è stato modificato in -X, questo serve per indicare che vogliamo estrarre il contenuto.

Se vuoi estrarre il contenuto in una directory diversa in cui ti trovi, aggiungiamo alla fine -C directory (la C qui è maiuscola, non come quella da creare che è minuscola).

 tar -xzvf compressfile.tar.gz -C ExtractDirectory
Faremo un esempio, vogliamo decomprimere il file che abbiamo precedentemente compresso compresso Solvetic.tar.gz e vogliamo salvarlo nella directory padre (…):
 tar -xzvf compresso Solvetic.tar.gz -C ./… 

Immagina di voler estrarre solo un determinato contenuto dal pacchetto, per questo sarebbe interessante elencare il contenuto del tar, puoi farlo nel modo seguente:

 tar -tf file.tar.gz tar -tzf file.tar.gz

E una volta che abbiamo visto il contenuto, immagina di essere interessato ai file .txt, quindi quello che eseguiremmo è il seguente (potrebbe non essere necessario inserire --caratteri jolly):

 tar -xvf file.tar.gz --caratteri jolly "* .txt"
Successivamente ti mostro l'output nel terminale dell'uso dell'ultima istruzione, prima vedi il contenuto dell'intero .tar.gz e nella seconda parte apprezziamo il contenuto che viene estratto (tutti i file .txt).

5. Parametri di comando

Ciascun parametro indicato significa quanto segue

  • -a, --ascii: È la modalità testo ASCII, cioè converte le terminazioni di riga nelle normali convenzioni.
  • -c, --stdout, --to-stdout: Mantieni invariati i file originali.
  • -d, --decompress, --uncompress: Decomprimi un file
  • -f, --forza: Forza la compressione o la decompressione di uno o più file
  • -h, --help: Visualizza l'aiuto del comando in questione
  • -l, --list: Abbiamo le seguenti opzioni:
  • dimensione compressa: Dimensione del file compresso

Raggio di compressione

  • dimensione non compressa: Dimensione del file decompresso
  • nome_non compresso: Nome del file decompresso
  • -L, --licenza: Licenza di comando
  • -n, --no-nome: Al momento della compressione non salva il nome del file originale
  • -q, --quiet: Rimuovi tutti gli avvisi
  • -r, --recursive: Ti permette di passare attraverso la struttura della directory in modo ricorsivo
  • -t, --test: Testare l'integrità del file compresso
  • -v, --verbose: Visualizza il nome e la percentuale ridotta di ogni file elaborato
  • -V, --versione: Visualizza la versione corrente del comando
  • ast, --migliore: Questa opzione ci permette di regolare la velocità di compressione dei file dove uno (1) è veloce e nove (9) è migliore.

Il modo per utilizzare ciascun comando è il seguente:

 file gzip per comprimere file gunzip in decompress.gz file zcat in display.gz

Ciascuno di questi comandi offre opzioni pratiche per la gestione di più file in Linux.

wave wave wave wave wave