GNU/Linux >> Znalost Linux >  >> Linux

Jak gzipovat adresář v Linuxu

Jak zazipujete adresář v Linuxu? Rozhodně nepoužívá příkaz gzip, protože pokud se pokusíte komprimovat složku pomocí příkazu gzip, zobrazí se tato chyba:

gzip:cíl je adresář – ignorováno

Zajímavé, že? Příkaz gzip nemůže komprimovat adresář, protože gzip v podstatě funguje na jednotlivé soubory, nikoli na celou složku.

co můžeš teď dělat? Jak komprimovat soubor gzip v Linuxu? Zde je to, co můžete udělat.

gzip adresář pomocí příkazu tar

Namísto přímé komprimace složky byste na ni měli nejprve použít tar. Příkaz tar shromáždí všechny soubory do jednoho archivního souboru. Samotný soubor nekomprimuje.

Pokud zkombinujete tar s gzip, příkaz tar vytvoří jeden archivní soubor ze složky a poté gzip tento archivní soubor zkomprimuje.

Dobrá věc je, že oba tyto kroky můžete provést v jednom příkazu pomocí možnosti z. Příkaz vypadá asi takto:

tar -zcvf output_file_name directory_to_compress

Dovolte mi vysvětlit vám možnosti použité ve výše uvedeném příkazu:

  • z – říká taru, že se zabývá gzip soubor
  • c – řekne taru, aby vytvořil archivní soubor
  • v – podrobný režim zobrazující, jaké soubory se zpracovávají
  • f – výstupem je soubor

Příklad použití tar a gzip ke komprimaci složky

Řekněme, že mám v adresáři spoustu souborů. Pokud k získání velikosti adresáře použiji příkaz du, je to 204 kB.

du -sh sample_text_files
204K    sample_text_files

Nyní, když komprimuji složku gzip:

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

Nyní, když zkontroluji velikost komprimované složky pomocí příkazu ls, je to sotva 10 KB.

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

Mějte na paměti při používání příkazu tar a gzip

Při používání příkazu tar byste si měli povšimnout několika věcí:

Je důležité zadat v příkazu název souboru, jinak se zobrazí tato chyba:

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

Pokud volbu -f vůbec nepoužijete, stále se vám zobrazí chyba, tentokrát jiná.

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

Doufám, že vám tento příkaz pomohl gzipovat adresář v Linuxu a také jste se naučili pár souvisejících věcí kolem tar a komprese. Nyní, když víte, jak komprimovat složku, možná byste si chtěli přečíst o tom, jak extrahovat soubor tar xz v Linuxu.

Jakékoli dotazy, návrhy nebo prosté poděkování jsou vždy vítány.


Linux
  1. Jak aktualizovat symbolický odkaz pro Linux

  2. Jak extrahovat nebo rozbalit soubor tar.xz v Linuxu

  3. Jak získat velikost adresáře v Linuxu

  1. Jak extrahovat soubory Tar do konkrétního nebo jiného adresáře v Linuxu

  2. Jak přejmenovat adresář v Linuxu

  3. Jak vytvořit nový adresář v Linuxu

  1. Jak přejmenovat adresář v Linuxu

  2. Jak odebrat adresář v Linuxu

  3. Jak komprimovat/dekomprimovat v Linuxu