Zcat - Linux Command - Unix Command

Pangalan

gzip, gunzip, zcat - i-compress o palawakin ang mga file

Buod

gzip [ -acdfhlLnNrtvV19 ] [ -S suffix ] [ pangalan ... ]
gunzip [ -acfhlLnNrtvV ] [ -S suffix ] [ pangalan ... ]
zcat [ -fhLV ] [ pangalan ... ]

Paglalarawan

Binabawasan ng Gzip ang laki ng pinangalang mga file gamit ang Lempel-Ziv coding (LZ77). Hangga't maaari, ang bawat file ay papalitan ng isa na may extension na .gz , habang pinapanatili ang parehong mga mode ng pagmamay-ari, ang mga oras ng pag-access at pagbabago. (Ang default na extension ay -gz para sa VMS, z para sa MSDOS, OS / 2 FAT, Windows NT FAT at Atari.) Kung walang tinukoy na mga file, o kung ang isang pangalan ng file ay "-", ang standard na input ay naka-compress sa standard output. Gzip lamang ay pagtatangka upang i-compress ang mga regular na file. Sa partikular, babalewalain nito ang mga simbolikong link.

Kung ang naka-compress na pangalan ng file ay masyadong mahaba para sa system file nito, gzip truncates ito. Tinutulungan ng Gzip na puksain lamang ang mga bahagi ng pangalan ng file na mas mahaba kaysa sa 3 mga character. (Ang bahagi ay binabawasan ng mga tuldok.) Kung ang pangalan ay binubuo ng mga maliit na bahagi lamang, ang pinakamahabang bahagi ay pinutol. Halimbawa, kung ang mga pangalan ng file ay limitado sa 14 na mga character, ang gzip.msdos.exe ay naka-compress sa gzi.msd.exe.gz. Hindi pinutol ang mga pangalan sa mga system na walang limitasyon sa haba ng pangalan ng file.

Bilang default, ang gzip ay nagpapanatili sa orihinal na pangalan ng file at timestamp sa naka-compress na file. Ang mga ito ay ginagamit kapag decompressing ang file gamit ang -N opsyon. Ito ay kapaki-pakinabang kapag ang naka-compress na pangalan ng file ay pinutol o kapag ang time stamp ay hindi napanatili pagkatapos ng paglipat ng file.

Maaaring maibalik ang mga naka- compress na file sa kanilang orihinal na form gamit ang gzip -d o gunzip o zcat. Kung ang orihinal na pangalan na naka-save sa naka-compress na file ay hindi angkop para sa system file nito, ang isang bagong pangalan ay itinayo mula sa orihinal na isa upang gawin itong legal.

Ang gunzip ay tumatagal ng isang listahan ng mga file sa command line nito at pinapalitan ang bawat file na ang pangalan ay nagtatapos sa .gz, -gz, .z, -z, _z o. Z at nagsisimula sa tamang magic number sa isang hindi naka-compress na file nang walang orihinal na extension . Kinikilala rin ng gunzip ang mga espesyal na extension na .tgz at .taz bilang shorthands para sa .tar.gz at .tar.Z ayon sa pagkakabanggit. Kapag naka-compress, gzip ay gumagamit ng extension na .tgz kung kinakailangan sa halip na truncating ng isang file na may isang extension ng .tar .

Ang gunzip ay maaaring mag-decompress sa mga file na nilikha ng gzip, zip, compress, compress -H o pack. Ang pagtuklas ng format ng pag-input ay awtomatikong. Kapag ginagamit ang unang dalawang mga format, ang mga gunzip ay sumusuri ng 32 bit CRC. Para sa pack, sinuri ng gunzip ang hindi naka-compress na haba. Ang standard na format ng compress ay hindi dinisenyo upang pahintulutan ang mga tseke ng pare-pareho. Gayunpaman ang gunzip ay paminsan-minsan na nakakakita ng isang masamang .Z file. Kung nakakakuha ka ng isang error kapag uncompressing isang. Z file , huwag ipagpalagay na ang. Z file ay tama dahil lamang sa ang standard na uncompress ay hindi magreklamo. Ito ay karaniwang nangangahulugan na ang standard na uncompress ay hindi sumusuri sa input nito, at maligaya na bumubuo ng output ng basura. Ang SCO compress -H format (paraan ng lzh compression) ay hindi kasama ang isang CRC ngunit pinapayagan din ang ilang mga tseke ng pare-pareho.

Ang mga file na nilikha ng zip ay maaaring hindi ma-compress sa pamamagitan ng gzip kung mayroon silang isang solong miyembro na naka-compress na may paraan ng 'deflation'. Ang tampok na ito ay inilaan lamang upang matulungan ang pag-convert ng mga tar.zip file sa format na tar.gz. Upang kunin ang mga zip file na may ilang mga miyembro, gamitin ang unzip sa halip na gunzip.

Ang zcat ay katulad sa gunzip -c. (Sa ilang mga system, maaaring i-install ang zcat bilang gzcat upang mapanatili ang orihinal na link upang i- compress.) Ang zcat ay hindi naka-compress sa alinman sa isang listahan ng mga file sa command line o sa karaniwang input nito at nagsusulat ng hindi naka-compress na data sa karaniwang output. zcat ay mag-uncompress ng mga file na may tamang numero ng magic kung mayroon silang isang .gz suffix o hindi.

Ginagamit ng Gzip ang algorithm ng Lempel-Ziv na ginamit sa zip at PKZIP. Ang halaga ng compression na nakuha ay depende sa laki ng input at pamamahagi ng mga karaniwang substrings. Karaniwan, ang teksto tulad ng source code o Ingles ay nabawasan ng 60-70%. Ang compression sa pangkalahatan ay mas mahusay kaysa sa nakamit ng LZW (tulad ng ginamit sa pag- compress ), Huffman coding (tulad ng ginamit sa pack ), o adaptive Huffman coding ( compact ).

Ang compression ay laging ginagawa, kahit na ang compressed file ay bahagyang mas malaki kaysa sa orihinal. Ang pinakamalala na pagpapalawak ng kaso ay ilang bytes para sa header ng gzip file, kasama ang 5 bytes bawat block ng 32K, o isang ratio ng pagpapalawak ng 0.015% para sa mga malalaking file. Tandaan na ang aktwal na bilang ng mga ginamit na mga bloke ng disk ay halos hindi kailanman tataas. Pinipreserba ng gzip ang mode, pagmamay-ari at mga timestamp ng mga file kapag naka-compress o nag-decompression.

MGA OPTION

-a --ascii

Mode ng text Ascii: i-convert ang mga end-of-line gamit ang mga lokal na kombensiyon. Ang opsyon na ito ay suportado lamang sa ilang mga di-Unix system. Para sa MSDOS, CR LF ay na-convert sa LF kapag naka-compress, at LF ay na-convert sa CR LF kapag decompressing.

-c --stdout - to-stdout

Sumulat ng output sa karaniwang output; panatilihin ang mga orihinal na file ay hindi nagbabago. Kung mayroong maraming mga input file, ang output ay binubuo ng isang pagkakasunud-sunod ng mga nakapag-iisa na compress na mga miyembro. Upang makakuha ng mas mahusay na compression, pagsamahin ang lahat ng mga input file bago i-compress ang mga ito.

-d --decompress --uncompress

Mag-decompress.

-f --force

Ang lakas ng compression o decompression kahit na ang file ay may maramihang mga link o ang kaukulang file ay umiiral na, o kung ang compress na data ay nabasa o nakasulat sa isang terminal. Kung ang data ng pag-input ay wala sa isang format na kinikilala ng gzip, at kung ang opsyon na - binigay din ang ibinigay, kopyahin ang data ng pag-input nang walang pagbabago sa karaniwang ouput: hayaan ang zcat kumilos bilang cat. Kung -f ay hindi ibinigay, at kapag hindi tumatakbo sa background, gzip prompt upang i-verify kung ang isang umiiral na file ay dapat mapapatungan.

-h --help

Magpakita ng screen ng tulong at huminto.

-l --list

Para sa bawat naka-compress na file, ilista ang sumusunod na mga patlang:


naka-compress na sukat: laki ng naka-compress na file
hindi naka-compress na laki: laki ng hindi naka-compress na file
ratio: compression ratio (0.0% kung hindi kilala)
uncompressed_name: pangalan ng hindi naka-compress na file

Ang hindi naka-compress na sukat ay ibinigay bilang -1 para sa mga file na hindi sa format na gzip, tulad ng naka-compress na .Z file. Upang makuha ang hindi naka-compress na laki para sa gayong file, maaari mong gamitin ang:


zcat file.Z | wc -c

Sa kumbinasyon ng opsyon na - po, ang mga sumusunod na field ay ipinapakita din:


paraan: paraan ng compression
crc: ang 32-bit na CRC ng hindi naka-compress na data
petsa at oras: stamp ng oras para sa hindi naka-compress na file

Ang mga pamamaraan ng compression na kasalukuyang sinusuportahan ay mag-deflate, i-compress, lzh (SCO compress -H) at pack. Ang crc ay ibinigay bilang ffffffff para sa isang file na hindi sa gzip format.

Sa - pangalan, ang hindi naka-compress na pangalan, petsa at oras ay ang mga naka-imbak sa loob ng compress file kung kasalukuyan.

Sa - salita, ang laki ng kabuuan at compression ratio para sa lahat ng mga file ay ipinapakita din, maliban kung ang ilang mga laki ay hindi kilala. Sa -quiet, ang mga pamagat at kabuuan ng mga linya ay hindi ipinapakita.

-L --license

Ipakita ang lisensya ng gzip at umalis.

-n --no-name

Kapag naka-compress, huwag i-save ang orihinal na pangalan ng file at time stamp bilang default. (Ang orihinal na pangalan ay laging nai-save kung ang pangalan ay dapat na pinutol.) Kapag decompressing, huwag ibalik ang orihinal na pangalan ng file kung kasalukuyan (alisin lamang ang gzip suffix mula sa compressed na pangalan ng file) at huwag ibalik ang orihinal na stamp ng oras kung kasalukuyan (kopyahin ito mula sa naka-compress na file). Ang pagpipiliang ito ay ang default na kapag decompressing.

-N --name

Kapag naka-compress, palaging i-save ang orihinal na pangalan ng file at stamp ng oras; ito ang default. Kapag nag-decompression, ibalik ang orihinal na pangalan ng file at oras stamp kung kasalukuyan. Kapaki-pakinabang ang pagpipiliang ito sa mga system na may limitasyon sa haba ng pangalan ng file o kapag ang time stamp ay nawala matapos ang isang file transfer.

-q -quiet

Sumpain ang lahat ng mga babala.

-r --recursive

Maglakbay nang direkta sa istraktura ng direktoryo. Kung ang alinman sa mga pangalan ng file na tinukoy sa command line ay mga direktoryo, ang gzip ay bumaba sa direktoryo at i-compress ang lahat ng mga file na natagpuan nito doon (o pagbubuhos sa kanila sa kaso ng gunzip ).

-S .suf --suffix .suf

Gumamit ng suffix .suf sa halip ng .gz. Ang anumang suffix ay maaaring ibigay, subalit ang mga suffix maliban sa .z at .gz ay dapat na iwasan upang maiwasan ang pagkalito kapag ang mga file ay inilipat sa ibang mga sistema. Ang isang null suffix pwersa gunzip upang subukan decompression sa lahat ng mga ibinigay na mga file alintana ng suffix, tulad ng sa:


gunzip -S "" * (*. * para sa MSDOS)

Ang nakaraang mga bersyon ng gzip ay gumagamit ng .z suffix. Ito ay binago upang maiwasan ang isang kontrahan sa pakete (1).

-t --test

Pagsusulit. Tingnan ang integridad ng naka-compress na file.

-v - masalita

Verbose. Ipakita ang pagbabawas ng pangalan at porsyento para sa bawat file na naka-compress o natutunaw.

-V - pagbabalik-loob

Bersyon. Ipakita ang numero ng bersyon at mga pagpipilian sa compilation pagkatapos ay umalis.

- # --fast - pinakamahusay

I-regulate ang bilis ng compression gamit ang tinukoy na digit na # , kung saan -1 o --fast ang nagpapahiwatig ng pinakamabilis na paraan ng compression (mas compression) at -9 o - pinakamainam na nagpapahiwatig ng pinakamabagal na paraan ng compression (pinakamahusay na compression). Ang default na antas ng compression ay -6 (iyon ay, nakiling sa mataas na compression sa gastos ng bilis).

Advanced na Paggamit

Maramihang mga naka-compress na mga file ay maaaring concatenated. Sa kasong ito, gunzip ay kunin ang lahat ng mga miyembro nang sabay-sabay. Halimbawa:


gzip -c file1> foo.gz
gzip -c file2 >> foo.gz

Pagkatapos


gunzip -c foo

ay katumbas ng


cat file1 file2

Sa kaso ng pinsala sa isang miyembro ng isang .gz file, ang iba pang mga miyembro ay maaari ding mabawi (kung ang nasirang miyembro ay tinanggal). Gayunpaman, maaari kang makakuha ng mas mahusay na compression sa pamamagitan ng pag-compress sa lahat ng mga miyembro nang sabay-sabay:


cat file1 file2 | gzip> foo.gz

pinipigilan ng mas mahusay kaysa sa


gzip -c file1 file2> foo.gz

Kung nais mong i-compress ang mga concatenated file upang makakuha ng mas mahusay na compression, gawin ang:


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

Kung ang isang naka- compress na file ay binubuo ng ilang mga miyembro, ang hindi naka-compress na laki at ang CRC na iniulat ng opsiyon sa --list ay nalalapat sa huling miyembro lamang. Kung kailangan mo ang hindi naka-compress na laki para sa lahat ng mga miyembro, maaari mong gamitin ang:


gzip -cd file.gz | wc -c

Kung nais mong lumikha ng isang solong file ng archive na may maramihang mga miyembro upang ang mga miyembro ay maaaring mamaya ay nakuha nang nakapag-iisa, gumamit ng isang archiver tulad ng tar o zip. Sinusuportahan ng tar na GNU ang pagpipiliang -z upang manawagan nang maliwanag ang gzip. Ang gzip ay dinisenyo bilang isang pandagdag sa alkitran , hindi bilang kapalit.

TINGNAN DIN

siksikin (1)

Ang format ng file na gzip ay tinukoy sa P. Deutsch, GZIP file format na detalye na bersyon 4.3, , Internet RFC 1952 (Mayo 1996). Tinukoy ang format ng zip deflation sa P. Deutsch, DEFLATE Compressed Data Format Specification version 1.3, , Internet RFC 1951 (Mayo 1996).

Mahalaga: Gamitin ang command ng tao ( % man ) upang makita kung paano ginagamit ang isang utos sa iyong partikular na computer.