Zcat - príkaz Linux - príkaz Unix

názov

gzip, gunzip, zcat - komprimovať alebo rozbaliť súbory

synopse

gzip [ -acdfhlLnNrtvV19 ] [ -S prípona ] [ name ... ]
gunzip [ -acfhlLnNrtvV ] [ -S prípona ] [ meno ... ]
zcat [ -fhLV ] [ meno ... ]

popis

Gzip znižuje veľkosť pomenovaných súborov pomocou kódovania Lempel-Ziv (LZ77). Kedykoľvek je to možné, každý súbor sa nahradí jedným súborom s rozšírením .gz , pričom sa zachovajú rovnaké režimy vlastníctva, časy prístupu a úpravy. (Predvolené rozšírenie je -gz pre VMS, z pre MSDOS, OS / 2 FAT, Windows NT FAT a Atari.) Ak nie sú zadané žiadne súbory alebo ak je názov súboru "-", štandardný vstup je komprimovaný do štandardného výkon. Gzip sa pokúsi iba komprimovať bežné súbory. Najmä ignoruje symbolické väzby.

Ak je názov komprimovaného súboru príliš dlhý pre jeho súborový systém, gzip ho skráti. Program Gzip sa pokúša skrátiť iba časti názvu súboru dlhšie ako 3 znaky. (Časť je vymedzená bodkami.) Ak sa názov skladá iba z malých častí, najdlhšie sú skrátené. Ak sú napríklad názvy súborov obmedzené na 14 znakov, gzip.msdos.exe je komprimovaný na adresu gzi.msd.exe.gz. Názvy nie sú skrátené v systémoch, ktoré nemajú limit na dĺžku názvu súboru.

V predvolenom nastavení gzip uchováva pôvodný názov súboru a časovú pečiatku v komprimovanom súbore. Tieto sa používajú pri dekompresii súboru s voľbou -N . Toto je užitočné, ak bol názov komprimovaného súboru skrátený, alebo keď sa časová pečiatka po prenose súboru nezachovala.

Komprimované súbory je možné obnoviť do pôvodnej podoby pomocou gzip -d alebo gunzip alebo zcat. Ak pôvodný názov uložený v komprimovanom súbore nie je vhodný pre jeho súborový systém, nový názov je vytvorený z pôvodného názvu, aby bol legálny.

gunzip preberie zoznam súborov na príkazovom riadku a nahradí každý súbor, ktorého názov končí .gz, -zz, .z, -z, _z alebo .Z a ktorý začína správnym magickým číslom s nekomprimovaným súborom bez pôvodného rozšírenia , gunzip tiež rozpozná špeciálne rozšírenia .tgz a .taz ako skratky pre .tar.gz a .tar.Z . Pri kompresii gzip v prípade potreby použije príponu .tgz namiesto skrátenia súboru s príponou .tar .

gunzip môže v súčasnosti dekomprimovať súbory vytvorené pomocou gzip, zip, kompresiu, kompresiu -H alebo pack. Detekcia vstupného formátu je automatická. Pri použití prvých dvoch formátov kontroluje gunzip 32 bitový CRC. V prípade balenia kontroluje zbraň zbraň nekomprimovanú dĺžku. Štandardný formát kompresie nebol navrhnutý tak, aby umožňoval kontroly konzistencie. Avšak gunzip je niekedy schopný zistiť zlý .Z súbor. Ak sa vyskytne chyba pri dekompresii súboru .Z , nepredpokladajte, že súbor .Z je správny len preto, že štandardná dekompresia sa nesťažuje. To zvyčajne znamená, že štandardná dekompresia nekontroluje svoj vstup a šťastne generuje odpadový výstup. Formát kompresie SC (metóda kompresie lzh) nezahŕňa CRC, ale umožňuje aj niektoré kontroly konzistencie.

Súbory vytvorené zipsom môžu byť dekomprimované pomocou gzip len vtedy, ak majú jeden člen komprimovaný metódou "deflácie". Táto funkcia je určená len na pomoc pri konverzii súborov tar.zip na formát tar.gz. Ak chcete extrahovať zip súbory s niekoľkými členmi, použite unzip namiesto gunzip.

zcat je totožný s gunzip -c. (Na niektorých systémoch môže byť zcat nainštalovaný ako gzcat, aby sa zachoval pôvodný odkaz na kompresiu.) Zcat dekomprimuje zoznam súborov na príkazovom riadku alebo jeho štandardný vstup a zapíše nekomprimované dáta na štandardný výstup. zcat rozbalí súbory, ktoré majú správne magické číslo, či majú príponu .gz alebo nie.

Gzip používa algoritmus Lempel-Ziv používaný v zip a PKZIP. Množstvo získanej kompresie závisí od veľkosti vstupu a distribúcie spoločných substrings. Zvyčajne sa text ako zdrojový kód alebo angličtina zníži o 60-70%. Kompresia je vo všeobecnosti oveľa lepšia ako kompresia dosiahnutá LZW (ako sa používa v kompresii ), Huffmanovo kódovanie (ako sa používa v balení ) alebo adaptačné kódovanie Huffman ( kompaktné ).

Kompresia sa vykonáva vždy, aj keď je komprimovaný súbor o niečo väčší ako originál. Najhoršie rozšírenie prípadu je niekoľko bajtov pre záhlavie súboru gzip plus 5 bajtov pri každom bloku 32 kB alebo pomer expanzie 0,015% pre veľké súbory. Upozorňujeme, že skutočný počet použitých diskových blokov sa takmer nikdy nezvyšuje. gzip zachováva režim, vlastníctvo a časové pečiatky súborov pri kompresii alebo dekompresii.

MOŽNOSTI

-a - ascii

Textový režim Ascii: konverzie koncov riadkov pomocou miestnych konvencií. Táto možnosť je podporovaná iba v niektorých systémoch, ktoré nie sú Unix. Pre MSDOS sa CR LF konvertuje na LF pri kompresii a LF sa pri dekompresii prevedie na CR LF.

-c -stdout -to-stdout

Napíšte výstup na štandardný výstup; zachovať pôvodné súbory nezmenené. Ak existuje niekoľko vstupných súborov, výstup sa skladá zo sekvencie nezávislých komprimovaných členov. Ak chcete získať lepšiu kompresiu, zrekonštruujte všetky vstupné súbory skôr, než ich komprimujete.

-d - dekomprimovať --uncompress

Dekompresiu.

-f -force

Kompresia alebo dekompresia sily, aj keď má súbor viacero odkazov alebo príslušný súbor už existuje, alebo ak sú komprimované dáta čítané alebo zapísané do terminálu. Ak vstupné údaje nie sú vo formáte rozpoznanom gzipom a ak je zadaná aj voľba --stdout, skopírujte vstupné dáta bez zmeny na štandardný výstup: nechajte zcat správať ako mačka. Ak -f nie je zadaná a keď nie je spustená na pozadí, výzva gzip overí, či sa má existujúci súbor prepísať.

-h - pomôcť

Zobrazte obrazovku s nápovedou a ukončite jej.

-l - zoznam

Pre každý komprimovaný súbor uveďte nasledujúce polia:


komprimovaná veľkosť: veľkosť komprimovaného súboru
nekomprimovaná veľkosť: veľkosť nekomprimovaného súboru
pomer: kompresný pomer (0,0%, ak nie je známy)
uncompressed_name: názov nekomprimovaného súboru

Nekomprimovaná veľkosť je uvedená ako -1 pre súbory, ktoré nie sú vo formáte gzip, ako sú napríklad komprimované súbory .Z. Ak chcete získať nekomprimovanú veľkosť pre takýto súbor, môžete použiť:


zcat file.Z | wc -c

V kombinácii s voľbou --verbose sa zobrazujú aj tieto polia:


metóda: metóda kompresie
crc: 32-bitová CRC nekomprimovaných údajov
dátum a čas: časová pečiatka nekomprimovaného súboru

Kompresné metódy, ktoré sú v súčasnosti podporované, sú deflate, kompresia, lzh (SCO kompresia -H) a pack. CRC je daný ako ffffffff pre súbor nie vo formáte gzip.

Pomocou --name, nekomprimovaný názov, dátum a čas sú tie, ktoré sú uložené v súbore kompresie, ak sú prítomné.

Pri voľbe --verbose sa tiež zobrazia súčty veľkosti a kompresný pomer pre všetky súbory, ak nie sú známe niektoré veľkosti. Pri - quiet, sa názvy a súčty riadkov nezobrazia.

-L - licencia

Zobrazte licenciu gzip a skončte.

-n --no-meno

Pri kompresii neuložte pôvodný názov súboru a časovú pečiatku. (Originálny názov sa vždy ukladá, ak sa meno muselo skrátiť.) Pri dekompresii neopravujte pôvodný názov súboru, ak je prítomný (odstráňte iba príponu gzip z názvu komprimovaného súboru) a neobnovte pôvodnú časovú pečiatku, ak je k dispozícii (skopírujte ho z komprimovaného súboru). Táto možnosť je predvolená pri dekompresii.

-N - meno

Pri kompresii vždy ukladajte pôvodný názov súboru a časovú pečiatku; toto je predvolené. Pri dekompresii obnovte pôvodný názov súboru a časovú pečiatku, ak je k dispozícii. Táto možnosť je užitočná v systémoch, ktoré majú limit na dĺžku názvu súboru alebo keď bola po prenosu súboru stratená časová pečiatka.

-q - quiet

Potlačte všetky upozornenia.

-r - recursive

Cestovanie adresárovú štruktúru rekurzívne. Ak niektorý z názvov súborov zadaný v príkazovom riadku je adresár, gzip zostúpi do adresára a komprimuje všetky súbory, ktoré tam nájde (alebo ich dekomprimuje v prípade gunzip ).

-S .suf --suffix .suf

Použite príponu .sf namiesto .gz. Môže sa použiť akákoľvek prípona, ale malo by sa vyhnúť iným príponám ako .z a .gz, aby sa predišlo zmätku pri prenose súborov do iných systémov. Nulová prípona si vyžaduje strelivo, aby vyskúšala dekompresiu na všetkých daných súboroch bez ohľadu na príponu, napríklad:


gunzip -S "" * (*. * pre MSDOS)

Predchádzajúce verzie gzip použili príponu .z. Toto sa zmenilo, aby sa zabránilo konfliktu s balíkom (1).

-t - test

Test. Skontrolujte integritu komprimovaných súborov.

-v - verbose

Ukecaný. Zobrazte názov a percentuálne zníženie pre každý komprimovaný alebo dekomprimovaný súbor.

-V - verzia

Verzia. Zobrazte číslo verzie a možnosti kompilácie a potom skončite.

- # - rýchle - najlepšie

Nastavte rýchlosť kompresie pomocou zadanej číslice # , kde -1 alebo --fast označuje najrýchlejšiu metódu kompresie (menej kompresie) a -9 alebo --best označuje najpomalší spôsob kompresie (najlepšia kompresia). Predvolená úroveň kompresie je -6 (to znamená skreslenie smerom k vysokej kompresii na úkor rýchlosti).

Pokročilé použitie

Viaceré komprimované súbory môžu byť zreťazené. V tomto prípade bude zbraň vytiahnuť všetkých členov naraz. Napríklad:


gzip -c súbor1> foo.gz
gzip -c súbor2 >> foo.gz

potom


gunzip -c foo

je ekvivalentná


cat file1 file2

V prípade poškodenia jedného člena súboru .gz môžu byť ostatní členovia ešte vymáhaní (ak je poškodený člen odstránený). Môžete však dosiahnuť lepšiu kompresiu tým, že kompresujete všetkých členov naraz:


súbor s mačkou1 súbor2 gzip> foo.gz

skomprimuje lepšie ako


gzip -c súbor1 súbor2> foo.gz

Ak chcete znova komprimovať súbory, aby ste dosiahli lepšiu kompresiu, postupujte takto:


gzip -cd old.gz | gzip> new.gz

Ak komprimovaný súbor pozostáva z viacerých členov, nekomprimovaná veľkosť a CRC hlásená voľbou -list sa vzťahuje iba na posledného člena. Ak potrebujete nekomprimovanú veľkosť pre všetkých členov, môžete použiť:


gzip -cd file.gz | wc -c

Ak chcete vytvoriť jeden archívny súbor s viacerými členmi, aby sa členovia mohli neskôr extrahovať samostatne, použite archivátor, ako je dech alebo zips. GNU tar podporuje voľbu -z na vyvolanie gzip transparentne. gzip je navrhnutý ako doplnok dechtu , nie ako náhrada.

POZRI TIEŽ

kompresia (1)

Formát súboru gzip je špecifikovaný v jazyku P. Deutsch, špecifikácia formátu súboru GZIP verzia 4.3, , Internet RFC 1952 (máj 1996). Formát deflovania zipu je špecifikovaný v jazyku P. Deutsch, DEFLATE Compressed Data Format Specification verzia 1.3, , Internet RFC 1951 (máj 1996).

Dôležité: Pomocou príkazu man ( % man ) môžete zistiť, ako sa príkaz používa vo vašom konkrétnom počítači.