Zcat - Linux команда - Unix команда

Име

gzip, gunzip, zcat - компресирајте или проширете ги датотеките

Синопсис

gzip [ -acdfhlLnNrtvV19 ] [ -S суфикс ] [ име ... ]
gunzip [ -acfhlLnNrtvV ] [ -S суфикс ] [ име ... ]
zcat [ -fhLV ] [ име ... ]

Опис

Gzip ја намалува големината на именуваните датотеки со користење на Lempel-Ziv кодирање (LZ77). Секогаш кога е можно, секоја датотека се заменува со една со продолжување .gz , додека ги задржува истите модови за сопственост, време за пристап и модификација. (Стандардната екстензија е -gz за VMS, z за MSDOS, OS / 2 FAT, Windows NT FAT и Atari.) Ако не се специфицирани никакви датотеки или ако името на датотеката е "-", стандардниот влез е компресиран на стандардот излез. Gzip само ќе се обиде да ги компресира редовните датотеки. Особено, ќе ги игнорира симболичките врски.

Ако името на компресираната датотека е предолго за неговиот датотечен систем, gzip го скратува. Gzip се обидува да ги оневозможи само деловите од името на датотеката подолго од 3 карактери. (Делот е ограничен со точки.) Ако името се состои само од мали делови, најдолгите делови се скратени. На пример, ако имињата на датотеките се ограничени на 14 карактери, gzip.msdos.exe е компресирана на gzi.msd.exe.gz. Имињата не се скратени на системи кои немаат ограничување на должината на името на датотеката.

Стандардно, gzip го задржува оригиналното име на датотека и временската ознака во компресираната датотека. Овие се користат при декомпресија на датотеката со опцијата -N . Ова е корисно кога името на компресираната датотека беше скратено или кога временскиот печат не бил зачуван по пренос на датотека.

Компресираните датотеки можат да бидат вратени во нивната оригинална форма користејќи gzip-d или gunzip или zcat. Ако оригиналното име снимено во компресираната датотека не е соодветно за неговиот датотечен систем, новото име е изградено од оригиналот за да биде законски.

gunzip зема листа на датотеки на својата командна линија и ја заменува секоја датотека чие име завршува со .gz, -gz, .z, -z, _z или .Z и кое започнува со точниот магичен број со некомпресирана датотека без оригиналната екстензија . gunzip, исто така, ги препознава специјалните наставки .tgz и .taz како кратенки за .tar.gz и .tar.Z соодветно. Кога компресира, gzip го користи .tgz продолжувањето ако е потребно, наместо да ја скрати датотеката со .tar екстензија.

gunzip во моментов може да ги декомпресира датотеките креирани од gzip, zip, компресира, компресира-H или пак. Откривањето на влезниот формат е автоматски. Кога ги користите првите два формати, gunzip проверува 32-битна CRC. За пакет, gunzip ја проверува некомпресираната должина. Стандардниот формат на компресија не е дизајниран да дозволува проверки на конзистентноста. Сепак, gunzip понекогаш може да открие лоша .Z датотека. Ако добиете грешка при некомпресирање на .Z-датотека , не претпоставувајте дека .Z-датотеката е точна, едноставно затоа што стандардната декомпресија не се жали. Ова обично значи дека стандардната декомпресија не го проверува влезот, и среќно генерира отпад од ѓубре. На SCO компресирачкиот H-формат (lzh компресија метод) не вклучува CRC, но, исто така, им овозможува на некои конзистентност проверки.

Датотеките создадени од zip можат да бидат некомпресирани од gzip само ако имаат еден член компресиран со методот 'дефлација'. Оваа функција е наменета само за да помогне во конверзија на tar.zip датотеки во формат tar.gz. За да ги извадите zip-датотеките со неколку членови, користете разоткривање наместо gunzip.

zcat е идентична со gunzip -c. (Во некои системи, zcat може да се инсталира како gzcat за да се зачува оригиналната врска за да се компресира.) Zcat uncompresses или листа на датотеки на командната линија или нејзиниот стандарден влез и ги запишува некомпресираните податоци за стандардниот излез. zcat ќе ги декомпресира датотеките кои имаат точен магичен број дали имаат .gz суфикс или не.

Gzip користи алгоритам на Лемпел-Жив кој се користи во zip и PKZIP. Износот на добиената компресија зависи од големината на влезот и распределбата на заедничките подлоги. Типично, текстот како изворниот код или англискиот јазик е намален за 60-70%. Компресијата е генерално многу подобра од онаа што се постигнува со LZW (како што се користи во компресираната ), хафман кодирање (како што се користи во пакетот ) или адаптивно Хафман кодирање ( компактен ).

Компресијата секогаш се изведува, дури и ако компресираната датотека е малку поголема од оригиналот. Најголемата експанзија е неколку бајти за насловот на gzip датотеката, плус 5 бајти секој 32K блок, или експанзија од 0.015% за големи датотеки. Имајте на ум дека вистинскиот број на користени диск-блокови речиси никогаш не се зголемува. gzip го зачувува режимот, сопственоста и временските ознаки на датотеките кога компресира или декомпресира.

ОПЦИИ

-a --ascii

Ascii текстуален режим: конвертира крајни линии користејќи локални конвенции. Оваа опција е поддржана само на некои не-Unix системи. За MSDOS, CR LF се конвертира во LF кога се компресира, а LF се конвертира во CR LF кога се декомпресира.

-c -stdout -to-stdout

Напиши излез на стандарден излез; да ги задржи оригиналните датотеки непроменети. Ако има неколку влезни датотеки, излезот се состои од редослед на независно компресирани членови. За да се добие подобра компресија, сменете ги сите влезни датотеки пред да ги компресирате.

-d - декомпресирај - комкомпресија

Декомпресија.

-f - сила

Принудувам компресија или декомпресија дури и ако датотеката има повеќе линкови или соодветната датотека веќе постои, или ако компресираните податоци се читаат или се запишуваат на терминал. Ако влезните податоци не се во формат препознаени од gzip, и ако е дадено и опцијата --stdout, копирајте ги влезните податоци без промена на стандардниот ouput: нека се однесуваат zcat како мачка. Ако -f не е дадено, и кога не работи во заднина, gzip бара да се потврди дали постоечката датотека треба да биде препишана.

-h - помош

Прикажи екран за помош и да престанам.

-l -list

За секоја компресирана датотека, наведете ги следниве полиња:


компресирана големина: големина на компресираната датотека
некомпресирана големина: големина на некомпресираната датотека
сооднос: сооднос на компресија (0.0% ако не е познат)
uncompressed_name: име на некомпресираната датотека

Некомпресираната големина е дадена како -1 за датотеки што не се во gzip формат, како што се компресирани .Z датотеки. За да ја добиете некомпресираната големина за таква датотека, можете да користите:


zcat file.Z | WC -c

Во комбинација со опцијата --verbose, се прикажуваат и следните полиња:


метод: метод на компресија
crc: 32-битната CRC на некомпресираните податоци
датум и време: временска ознака за некомпресираната датотека

Методите за компресија кои моментално се поддржани се дефлатираат, компресираат, lzh (SCO компресија -H) и пакетот. Црцот е даден како ffffffff за датотека што не е во gzip формат.

Со --name, некомпресираното име, датумот и времето се оние кои се складирани во рамките на компресираната датотека, ако се присутни.

Со --verbose се прикажани големината и соодносот на компресија за сите датотеки, освен ако некои големини не се непознати. Со --quiet, линиите за наслов и тотали не се прикажуваат.

-L - сл

Прикажи го gzip лиценцата и да престанам.

-n -no-name

Кога компресирате, не го зачувувајте оригиналното име на датотека и временската ознака стандардно. (Оригиналното име секогаш се зачувува ако името мора да биде скратено.) Кога декомпресирате, немојте да го обновувате оригиналното име на датотека доколку е присутно (отстранете го само gzip суфиксот од името на компресираната датотека) и не го обновувајте оригиналниот временски жиг ако е присутен (копирајте го од компресираната датотека). Оваа опција е стандардна при декомпресија.

-N-име

Кога компресирате, секогаш зачувајте го оригиналното име на датотека и временската ознака; ова е стандардно. Кога декомпресирате, вратете го оригиналното име на датотека и временската ознака ако е присутна. Оваа опција е корисна за системи кои имаат ограничување на должината на името на датотеката или кога временскиот жиг е изгубен по пренос на датотека.

-q --quiet

Потиснете ги сите предупредувања.

-r - рекурзивен

Патувајте ја структурата на директориумот рекурзивно. Ако било која од имињата на датотеките наведени во командната линија се директориуми, gzip ќе се спушти во директориумот и ќе ги компресира сите датотеки што ги наоѓа (или ги декомпресира во случај на gunzip ).

-S .suf -suffix .suf

Користете суфикс .suf наместо .gz. Може да се даде било суфикс, но суфиксите освен .z и .gz треба да се избегнуваат за да се избегне забуна кога датотеките се пренесуваат на други системи. Нулта суфиксот принудува gunzip да се обиде декомпресија на сите дадени датотеки, без оглед на суфиксот, како во:


gunzip -S "" * (*. * за MSDOS)

Претходни верзии на gzip користеа .z суфикс. Ова беше променето за да се избегне конфликт со пакетот (1).

-Т - тест

Тест. Проверете ја интегритетот на компресирана датотека.

-v - глаголи

Проверка. Прикажете го името и процентот намалување за секоја датотека компресирана или декомпресирана.

-V - верзија

Верзија. Прикажете го бројот на верзијата и опциите за компилација потоа да престанете.

- # - Брз - најдобар

Регулирајте ја брзината на компресија користејќи ја наведената цифра # , каде -1 или - брз покажува најбрзиот метод за компресија (помалку компресија) и -9 или -безбедно укажува на најмалиот метод за компресија (најдобра компресија). Стандардното ниво на компресија е -6 (што е пристрасно кон висока компресија на сметка на брзината).

Напредно користење

Повеќе компресирани датотеки може да бидат конкатенирани. Во овој случај, gunzip ќе ги извлече сите членови одеднаш. На пример:


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

Потоа


gunzip-c foo

е еквивалентно на


cat file1 file2

Во случај на оштетување на еден член од .gz датотека, другите членови се уште можат да бидат обновени (ако оштетениот член е отстранет). Сепак, можете да добиете подобра компресија со компресирање на сите членови одеднаш:


cat file1 file2 | gzip> foo.gz

облоги подобро од


gzip -c file1 file2> foo.gz

Ако сакате да рекомпресирате конкатени датотеки за да добиете подобра компресија, направете:


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

Ако компресирана датотека се состои од неколку членови, некомпресираната големина и CRC пријавени од опцијата --list се применуваат само за последниот член. Ако ви треба некомпресирана големина за сите членови, можете да користите:


gzip -cd file.gz | WC -c

Ако сакате да создадете единствена архивска датотека со повеќе членови, така што членовите подоцна можат да се извадат независно, користете архивач како катран или zip. GNU кат ја поддржува -z опцијата за транспарентно повикување на gzip. gzip е дизајниран како додаток на катран , а не како замена.

ИСТО ТАКА ВИДИ

компресира (1)

Форматот на gzip формат е наведен во P. Deutsch, GZIP спецификацијата на формат на датотека верзија 4.3, , Интернет RFC 1952 (мај 1996). Форматот за дефлација на ZIP е наведен во P. Deutsch, DEFLATE Спецификација за компресиран формат на податоци 1.3, , Интернет RFC 1951 (мај 1996).

Важно: Користете ја командата за човекот ( % man ) за да видите како се користи командата на вашиот компјутер.