Zcat - Linux Command - Unix Command

vardas

gzip, gunzip, zcat - suspausti arba išplėsti failus

Anotacija

gzip [ -acdfhlLnNrtvV19 ] [ -S priesaga ] [ vardas ... ]
gunzip [ -acfhlLnNrtvV ] [ -S priesaga ] [ vardas ... ]
zcat [ -fhLV ] [ vardas ... ]

apibūdinimas

Gzip sumažina pavadintų failų dydį naudojant Lempel-Ziv kodavimą (LZ77). Kai tik įmanoma, kiekvienas failas pakeičiamas vienu su plėtiniu .gz , tuo pačiu išlaikant tuos pačius nuosavybės režimus, prieigos ir keitimo laiką. (Numatytasis išplėtimas yra -gz VMS, z MSDOS, OS / 2 FAT, Windows NT FAT ir Atari.) Jei nėra failų arba jei failo vardas yra "-", standartinis įvestis yra suspaustas į standartą produkcija Gzip bandys tik suspausti reguliarius failus. Visų pirma jis ignoruos simbolines nuorodas.

Jei suspausto failo pavadinimas yra per ilgas jo failų sistemai, gzip trunka jį. Gzip bando sutrumpinti tik failo pavadinimų dalis, ilgesnę nei 3 ženklai. (Dalį riboja taškai.) Jei pavadinimas susideda tik iš mažų dalių, ilgiausios dalys yra sutrumpintos. Pavyzdžiui, jei failų vardai yra ne daugiau kaip 14 simbolių, gzip.msdos.exe yra suspaustas į gzi.msd.exe.gz. Vardai nėra sutrumpinti sistemose, kurių failo pavadinimo ilgis neribojamas.

Pagal nutylėjimą gzip išsaugo originalų failo vardą ir laiko žymę suspaustame faile. Jie naudojami išspausdinant failą su parinktimi -N . Tai naudinga, kai suspausto failo vardas buvo sutrumpintas arba kai failo perdavimo metu nebuvo išsaugotas laiko žymas.

Suspausti failai gali būti atkurti originalioje formoje naudojant gzip -d arba gunzip arba zcat. Jei originalus pavadinimas, išsaugotas suspaustame faile, netinkamas jo failų sistemai, naujas pavadinimas sukurtas iš pradinio, kad būtų teisėtas.

Gunzip užima failų sąrašą savo komandinėje eilutėje ir pakeičia kiekvieną failą, kurio vardas baigiasi .gz, -gz, .z, -z, _z arba .Z ir kuris prasideda teisingu magišku numeriu nesuspausto failo be originalaus plėtinio . "gunzip" taip pat atpažįsta specialius plėtinius .tgz ir .taz kaip sutrumpinimus atitinkamai .tar.gz ir .tar.Z . Suspaudžiant, gzip naudoja .tgz pratęsimą, jei reikia, o ne sutrumpinti failą su .tar išplėtimu.

Gunzip šiuo metu gali dekompresuoti failus, sukurtus naudojant gzip, zip, suspausti, suspausti -H ar paketą. Įvesties formato aptikimas yra automatinis. Naudodamas pirmuosius du formatus, gunzip tikrina 32 bitų CRC. Pakuotėje gunzip patikrina nespaustą ilgį. Standartinis kompresoriaus formatas nebuvo sukurtas, kad būtų galima patikrinti nuoseklumą. Tačiau gunzip kartais gali aptikti blogą .z failą. Jei gaunate klaidą, kai nespausdinate .Z failą , nereikėtų manyti, kad .Z failas yra teisingas, nes standartinis " uncompress " nesiskundžia. Tai paprastai reiškia, kad standartinis " uncompress " netikrina jo įvesties ir laimingai sukuria šiukšliadėžę. SCO suspaudimo -H formatas (lzh suspaudimo metodas) neapima CRC, bet taip pat leidžia atlikti tam tikrų nuoseklumo patikrinimus.

Failai, sukurti zip, gali būti nesuspausti gzip tik tuo atveju, jei jie turi vieną narį, suspaustą "defliacijos" metodu. Ši funkcija skirta tik padėti konvertuoti tar.zip failus į tar.gz formatą. Norėdami ištraukti "zip" failus su keliais nariais, naudokite " unzip", o ne " gunzip".

zcat yra identiškas gunzip- c. (Kai kuriose sistemose zcat gali būti įdiegtas kaip gzcat, kad išsaugotumėte pradinę nuorodą suspausti.) " Zcat" atspaudžia arba komandų eilutės failų sąrašą, arba jo standartinę įvestį, ir įrašo nesuspaustytus duomenis į standartinę išvestį. "zcat " atspaus failus, turinčius teisingą magiškąjį numerį, ar jie turi .gz priesagą, ar ne.

Gzip naudoja zip ir PKZIP algoritmą Lempel-Ziv. Gauta suspaudimo suma priklauso nuo įvesties dydžio ir bendrų substrijų pasiskirstymo. Paprastai tekstas, pvz., Šaltinio kodas arba anglų kalba, sumažinamas 60-70%. Kompresija yra daug geresnė nei LZW (naudojama kompresoriuje ), Huffman kodavimas (naudojamas pakuotėje ) arba adaptuojamas Huffman kodavimas ( kompaktiškas ).

Kompresija visada atliekama, net jei suspaustas failas yra šiek tiek didesnis nei originalas. Blogiausio atvejo išplėtimas yra keletas baitų gzip failo antraštėje, plius 5 baitai kiekvieną 32K bloką arba 0,015% plitimo santykis dideliems failams. Atkreipkite dėmesį, kad faktinis naudojamų disko blokų skaičius beveik niekada nepadidėja. Gzip išsaugo failų režimą, nuosavybę ir laiko žymes, kai suspaudžiamas arba dekompresuojamas.

GALIMYBĖS

-a - ascii

"Ascii" teksto režimas: paversti eilučių pabaigą vietinėmis nuostatomis. Ši parinktis palaikoma tik kai kuriose ne "Unix" sistemose. MSDOS atveju CR LF suspaudžiamas į LF, o deformuojant, LF paverčiamas CR LF.

-c -stdout -to-stdout

Parašykite produkciją standartine išvestimi; originalus failus nepakeisti. Jei yra keli įvesties failai, išvestis susideda iš nepriklausomų suspaustų elementų sekos. Norint gauti geresnį suspaudimą, suspauskite visus įvesties failus.

-d --dekompress --uncompress

Atspaudas

-f --force

Įjunkite suspaudimą arba dekompresiją, net jei failas turi keletą nuorodų arba atitinkamas failas jau egzistuoja arba jei suspausto duomenys yra skaitomi arba įrašomi į terminalą. Jei įvesties duomenys nėra formatu, kurį atpažįsta gzip, o jei yra ir parinktis -stdout, nukopijuokite įvesties duomenis be standartinio išvesties pakeitimo: tegul zcat elgtis kaip katė. Jei -f nepateikta ir kai fone neveikia, gzip raginama patikrinti, ar esamas failas turi būti perrašytas.

-h --pagal

Parodykite pagalbos ekraną ir palikite.

-l --list

Kiekvienai suspaustom failui išvardykite šiuos laukus:


suspaustas dydis: suspausto failo dydis
Nesuspaustas dydis: nesuspaustinto failo dydis
santykis: suspaudimo laipsnis (0.0%, jei nežinoma)
Uncompressed_name: nesuspaustinto failo pavadinimas

Nesuspaustytas dydis pateikiamas kaip -1 failams, kurie nėra gzip formatu, pvz., Suspausti .Z failai. Norėdami gauti tokio failo nesuspaustų dydžių, galite naudoti:


zcat file.Z | wc-c

Kartu su parinktimi "--verbose" taip pat rodomi šie laukai:


metodas: suspaudimo metodas
crc: neišspaustų duomenų 32 bitų CRC
data ir laikas: laiko spaudas nesuspaustam bylos failui

Šiuo metu palaikomi suspaudimo metodai: deflate, compress, lzh (SCO compress -H) ir paketas. Crc pateikiama kaip ffffffff failui, kuris nėra gzip formatu.

Su pavadinimu nesuspaustytas pavadinimas, data ir laikas yra tie, kurie saugomi suspausto failo atmintyje, jei jie yra.

Su "--verbose", taip pat rodomas visų failų dydžio ir glaudinimo santykis, nebent kai kurie dydžiai yra nežinomi. Su kvailiu, antraštės ir sumos eilutės nerodomos.

-L - licencija

Rodyti gzip licenciją ir išeiti.

-n - ne-vardas

Kai suspaudžiatės, neišsaugokite pradinio failo vardo ir laiko žymos pagal numatytuosius nustatymus. (Originalus pavadinimas visada išsaugomas, jei vardą reikia sutrumpinti.) Išskleidžiant, nenurašykite originalaus failo pavadinimo, jei jis yra (pašalinkite tik suspausto failo vardo gzip supaprastintą pavadinimą) ir neatnaujinsite pradinio laiko žymos, jei esate (nukopijuokite jį iš suspausto failo). Ši parinktis yra numatytoji, kai dekompresija.

-N - vardas

Suspaudžiant, visada išsaugokite pradinį failo pavadinimą ir laiko spaudą; tai pagal nutylėjimą. Kai dekompresija, atkurkite pradinį failo pavadinimą ir laiko spaudą, jei yra. Ši parinktis yra naudinga sistemose, kurios turi failo vardo ilgio ribą arba kai laiko žymeklis buvo prarastas po failo perdavimo.

-q - kietas

Naikinkite visus įspėjimus.

-r - recursyvus

Kelionių katalogų struktūra rekursiškai. Jei kuris nors iš komandų eilutėje nurodytų failų pavadinimų yra katalogai, gzip nusileis į aplanką ir suspaudžia visus ten esančius failus (arba atspaudžia juos gunzip atveju).

-S .suf --suffix .suf

Naudokite priesagą .suf vietoj .gz. Galima duoti bet kokią priesagą, tačiau reikėtų vengti kitokių nei .z ir .gz priesagų, kad būtų išvengta painiavos, kai failai perduodami kitoms sistemoms. Nulinė priesaga verčia gunzip išbandyti dekompresiją visais nurodytais failais nepriklausomai nuo priesagos, kaip:


gunzip -S "" * (*. *, skirtas MSDOS)

Ankstesnėse "gzip" versijose buvo naudojama .z priesaga. Tai pakeista siekiant išvengti konflikto su pakuote (1).

-t --test

Testas. Patikrinkite suspausto failo vientisumą.

-v - verbose

Verbose. Parodykite vardą ir procentinį sumažėjimą kiekvienam suspaustam arba išspaustam failui.

-V --versija

Versija Rodyti versijos numerį ir rinkimo parinktis, tada baigsite.

- # --fast - geriausias

Sureguliuokite suspaudimo greitį, naudodami nurodytą skaitmenį # , kur -1 arba --fast nurodo greičiausiai suglaudinimo metodą (mažiau suspaudimo) ir -9 arba - labiausiai nurodo lėčiausią suspaudimo metodą (geriausias suspaudimas). Numatytasis suspaudimo lygis yra -6 (ty nukreiptas į didelį suspaudimą greičio sąskaita).

Išplėstinis naudojimas

Keli suspausti failai gali būti susieti. Tokiu atveju gunzip iš karto ištrauks visus narius. Pavyzdžiui:


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

Tada


gunzip-c foo

yra lygiavertis


katės failas1 failas2

Jei sugadintas vienas .gz failo narys, kiti nariai vis tiek gali būti susigrąžinami (jei sugadintas narys pašalintas). Tačiau galite gauti geresnį suspaudimą suspaudžiant visus narius vienu metu:


cat file1 file2 | gzip> foo.gz

suspaudžia geriau nei


gzip-c failas1 failas2> foo.gz

Jei norite sugriežtinti susietus failus, norėdami sugriežtinti failus, atlikite šiuos veiksmus:


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

Jei suspausto failo susideda iš kelių narių, nepaspaustytas dydis ir CRC, apie kuriuos pranešta pasirinkimo sąraše, taikomas tik paskui nariui. Jei jums reikia nesuspausto dydžio visiems nariams, galite naudoti:


gzip-cd file.gz | wc-c

Jei norite sukurti vieną archyvinį failą su keliais nariais, kad nariai vėliau galėtų būti išgauti savarankiškai, naudokite archyvuotoją, pvz., Tarą arba zip. GNU tar palaiko "-z" galimybę gzip perteikti skaidriai. "gzip" suprojektuotas kaip dervos papildas, o ne pakeitimas.

TAIP PAT ŽR

suspausti (1)

Gzip formato failas yra nurodytas P. Deutsch, GZIP failo formato specifikacijoje 4.3 versija, , Internet RFC 1952 (1996 m. Gegužės mėn.). Pašto defliacijos formatas nurodytas P. Deutsch, DEFLATE suspausto duomenų formato specifikacijoje 1.3 versija, , Internet RFC 1951 (1996 m. Gegužės mėn.).

Svarbu: naudokite komandą man ( % man ), kad pamatytumėte, kaip komanda naudojama jūsų konkrečiame kompiuteryje.