GNU/Linux >> Linux Esercitazione >  >> Linux

Come gzippare una directory in Linux

Come si gzippa una directory in Linux? Sicuramente non sta usando il comando gzip perché se provi a comprimere una cartella usando il comando gzip, vedrai questo errore:

gzip:target è una directory -- ignorata

Interessante, vero? Il comando gzip non può comprimere una directory perché essenzialmente gzip funziona su singoli file, non sull'intera cartella.

Cosa puoi fare ora? Come comprimere con gzip un file in Linux? Ecco cosa puoi fare.

gzip una directory usando il comando tar

Invece di provare a comprimere direttamente la cartella, dovresti prima usare tar su di essa. Il comando tar raccoglierà tutti i file in un unico file di archivio. Non comprime il file stesso.

Se combini tar con gzip, il comando tar creerà un singolo file di archivio dalla cartella e quindi gzip comprimerà questo file di archivio.

La cosa buona è che puoi eseguire entrambi questi passaggi in un unico comando usando l'opzione z. Il comando è simile a questo:

tar -zcvf output_file_name directory_to_compress

Lascia che ti spieghi le opzioni utilizzate nel comando precedente:

  • z – dice a tar che ha a che fare con gzip file
  • c – dice a tar di creare il file di archivio
  • v – modalità dettagliata che mostra quali file vengono elaborati
  • f – l'output è un file

Esempio di utilizzo di tar e gzip per comprimere una cartella

Diciamo che ho un mucchio di file in una directory. Se uso il comando du per ottenere la dimensione della directory, è 204 KB.

du -sh sample_text_files
204K    sample_text_files

Ora se comprimo gzip la cartella:

tar -cvzf sample_text_archive  sample_text_files
sample_text_files/
sample_text_files/sample_rar.rar
sample_text_files/test/
sample_text_files/dir2/
sample_text_files/dir2/services
sample_text_files/dir2/agatha.txt
sample_text_files/abhi-3.txt

Ora, se controllo la dimensione della cartella compressa usando il comando ls, sono appena 10 KB.

ls -lh sample_text_archive 
-rw-r--r-- 1 abhishek abhishek 9.6K Apr 11 11:41 sample_text_archive

Tieni a mente quando usi il comando tar e gzip

Dovresti notare un paio di cose mentre usi il comando tar:

È importante fornire il nome del file nel comando, altrimenti vedrai questo errore:

tar: Cowardly refusing to create an empty archive
Try 'tar --help' or 'tar --usage' for more information.

Se non utilizzi affatto l'opzione -f, vedrai comunque un errore, questa volta diverso.

tar: Refusing to write archive contents to terminal (missing -f option?)
tar: Error is not recoverable: exiting now

Spero che questo comando ti abbia aiutato a gzippare una directory in Linux e che tu abbia anche imparato alcune cose correlate su tar e compressione. Ora che sai come comprimere una cartella, forse ti piacerebbe leggere come estrarre il file tar xz in Linux.

Eventuali domande, suggerimenti o una semplice parola di ringraziamento sono sempre ben accetti.


Linux
  1. Come aggiornare un collegamento simbolico Linux

  2. Come estrarre i file Tar in una directory specifica o diversa in Linux

  3. Come rinominare una directory su Linux

  4. Come comprimere/decomprimere in Linux

  5. Come estrarre o decomprimere il file tar.xz in Linux

Come configurare SFTP in chroot in Linux

Come usare il comando cd in Linux

Come spostare una directory in Linux

Come copiare la directory su Linux

Come contare i file nella directory su Linux

Come usare gzip in Linux?