Zcat - Linux Command - Unix команадсы

Атауы

gzip, gunzip, zcat - файлдарды қысу немесе кеңейту

Синопсис

gzip [ -acdfhlLnNrtvV19 ] [ -S жұрнағы ] [ аты ... ]
gunzip [ -acfhlLnNrtvV ] [ -S жұрнағы ] [ аты ... ]
zcat [ -fhLV ] [ name ... ]

Сипаттама

Gzip аталған файлдардың өлшемін Lempel-Ziv кодтау (LZ77) арқылы азайтады. Мүмкіндігінше, әр файл кеңейтілім .gz кеңейтімімен ауыстырылады, сол иелік режимдерін, қол жеткізу және өзгерту уақыттарын сақтайды. (Әдепкі кеңейтім - VMS үшін MS-DOS , 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, compress, compress -H немесе пакетін жасаған файлдарды шығарып тастай алады . Енгізу форматы автоматты түрде анықталады. Алғашқы екі пішімді пайдаланғанда, gunzip 32 биттік CRC тексереді. Қаптама үшін gunzip қысылмаған ұзындықты тексереді. Стандартты қысу форматы консистенцияны тексеруге мүмкіндік бермеген. Алайда gunzip кейде жаман ZZ файлын анықтай алады. .Z файлын ашу кезінде қате пайда болса, стандартты сығымдаудың шағымдана алмағандықтан, .Z файлының дұрыс екендігін жоққа шығармаңыз. Бұл, әдетте, стандартты сығымдау оның кірісін тексермейді және қоқысты шығаруды бақытты етеді. SCO компресстері -H пішімі (lzh қысу әдісі) CRC-ды қамтымайды, сонымен қатар кейбір сәйкестік тексерулеріне мүмкіндік береді.

Zip арқылы жасалған файлдар 'deflation' әдісімен сығылған бір мүшеге ие болған жағдайда ғана gzip арқылы қысылмайды. Бұл мүмкіндік tar.zip файлдарын tar.gz пішіміне түрлендіруге ғана арналған. Бірнеше пайдаланушымен zip файлдарын шығару үшін, gunzip орнына unzip пайдаланыңыз .

zcat gunzip -c ұқсас . (Кейбір жүйелерде zcat компресстің бастапқы сілтемесін сақтау үшін gzcat ретінде орнатылуы мүмкін). Zcat командалық жолда немесе оның стандартты енгізіліміндегі файлдардың тізімін босатады және стандартты шығаруда қысылмаған деректерді жазады. zcat .gz жұрнағы бар ма, жоқ па, дұрыс сиқырлы саны бар файлдарды ашпайды .

Gzip zip және PKZIP-де пайдаланылатын Lempel-Ziv алгоритмін пайдаланады. Алынған қысу мөлшері кіріс өлшеміне және ортақ субстраттардың таралуына байланысты. Әдетте, бастапқы мәтін немесе ағылшын тілі сияқты мәтін 60-70% -ға азаяды. Қысым әдетте LZW ( қысу кезінде қолданылған), Huffman кодтау ( пакетте пайдаланылған) немесе адаптивті Huffman кодтамасы ( ықшам ) арқылы қол жеткізілгеннен әлдеқайда жақсы.

Сығылған файл түпнұсқадан сәл үлкен болса да, қысу әрқашан орындалады. Ең нашар жағдай кеңейту - gzip файлының тақырыбына арналған бірнеше байт, сонымен қатар әрбір 32K блокта 5 байт немесе үлкен файлдар үшін 0.015% кеңейту коэффициенті. Қолданылған дискілер блогының нақты саны іс жүзінде ешқашан жоғарылайтынын ескеріңіз. gzip қысу немесе босату кезінде файлдардың режимін, меншік және уақыт белгілерін сақтайды.

ОПЦИЯЛАР

-a -ascii

Ascii мәтіндік режимі: жергілікті конвенцияларды қолданып, соңғы сызықтарды түрлендіріңіз. Бұл параметр тек Unix емес кейбір жүйелерде ғана қолданады. MSDOS үшін, CR LF қысу кезінде LF-ге түрлендіріледі және LF-ны декомпресси кезінде CR LF-ге түрлендіреді.

-c -stdout -to-stdout

Шығарылымды стандартты шығару бойынша жазу; бастапқы файлдарды өзгертпеңіз. Егер бірнеше кіріс файлы болса, онда шығу дербес сығылған мүшелердің дәйектілігінен тұрады. Жақсартылған қысуды алу үшін барлық кіріс файлдарды қысу алдында оларды біріктіріңіз.

-d - дестелеу - сығымдау

Бекіту.

-f - күші

Егер файлда бірнеше сілтеме болса немесе тиісті файл бар болса немесе қысылған деректер терминалдан оқылса немесе жазылса да, қысуды немесе декомпрессификацияны күштейді. Егер кіріс деректері gzip деп танылған пішімде болмаса және егер опция --stdout параметрі де берілсе, кіріс деректерін стандартты ouput мәніне ауыстырмай көшіріңіз: zcat cat ретінде әрекет етсін . -f берілмесе және фондық режимде жұмыс істемесе, gzip бар файлды қайта жазу керек пе екенін тексеруге кеңес береді.

-h - көмек

Анықтама экранын шығарып, шығыңыз.

-l -list

Әрбір қысылған файл үшін келесі өрістерді тізімдеңіз:


қысылған өлшем: қысылған файлдың өлшемі
Қысылмаған өлшем: қысылмаған файлдың өлшемі
қатынасы: қысу коэффициенті (0.0% егер белгісіз болса)
uncompressed_name: қысылмаған файлдың атауы

Қысылмаған өлшемі gzip пішімінде емес, қысылған .Z файлдары сияқты файлдар үшін -1 ретінде беріледі. Осындай файл үшін қысылмаған өлшемді алу үшін келесі әрекеттерді орындауға болады:


zcat file.Z | wc -c

--verbose опциясымен бірге келесі өрістер көрсетіледі:


әдісі: қысу әдісі
crc: қысылмаған деректердің 32 биттік CRC
күні мен уақыты: қысылмаған файл үшін уақыт белгісі

Қазіргі уақытта қолданылатын қысу әдісі дефлать, қысу, lzh (SCO compress -H) және пакет. Crz файлы ffffffff файл ретінде gzip форматында емес беріледі.

With - атымен, қысылмаған атауы, күні мен уақыты, егер бар болса, компресс файлы ішінде сақталады.

With --verbose, барлық файлдар үшін өлшемдердің жиынтығы мен қысу коэффициенті, егер кейбір өлшемдер белгісіз болса, көрсетіледі. Тұтастай алғанда, тақырып және қорытынды сызықтар көрсетілмейді.

-L -license

Gzip лицензиясын көрсету және шығу.

-n - аты жоқ

Қысып жатқанда, түпнұсқалық файл атауын және уақыт белгісін әдепкі бойынша сақтамаңыз. (Егер атау қысқартылса, түпнұсқа атау әрқашан сақталады.) Бастағанда, бастапқы файл атауын қалпына келтірмеңіз (қысылған файл атауынан тек gzip жұрнағын алып тастаңыз) және егер бар болса, бастапқы уақыт белгісін қалпына келтірмеңіз (оны қысылған файлдан көшіріңіз). Бұл опция таңбаны шығарғанда әдепкі болып табылады.

-N - атау

Қысқартқанда, әрқашан түпнұсқа файл атауын және уақыт белгісін сақтаңыз; бұл әдепкі болып табылады. Бастағанда, түпнұсқа файл атауын және уақыт белгісін қалпына келтіріңіз. Бұл параметр файл атауының ұзындығы бойынша шектеу немесе файлды тасымалдаудан кейін уақытша мөрі жойылған жүйелерде пайдалы.

-q --quiet

Барлық ескертулерді басу.

-r --recursive

Каталогтың құрылымын рекурсивті түрде саяхаттаңыз. Егер пәрмен жолында көрсетілген файл атаулары кез-келген каталог болса, gzip каталогқа түседі және ол табылған барлық файлдарды қысады (немесе оларды gunzip жағдайында бұғаттайды ).

- С .суф - .суф

.gz орнына .suf жұрнағын қолданыңыз. Кез-келген жұрнақ берілуі мүмкін, бірақ файлдар басқа жүйелерге ауыстырылған кезде шиеленісті болдырмау үшін .z және .gz-ден басқа суффикстерді болдырмау керек. Нөлдік жұрнақ, gunzip-ті барлық берілген файлдарда жұрнақтарға қарамастан, декомпрессионалды көруге мәжбүрлейді, сияқты:


gunzip -S «» * (*. * MSDOS үшін)

Gzip бағдарламасының алдыңғы нұсқаларында .z суффиксі қолданылады. Бұл пакетпен қақтығысуға жол бермеу үшін өзгертілді (1).

-t - тест

Сынақ. Сығылған файлдың тұтастығын тексеріңіз.

-v - дерекқор

Мәліметтер. Әрбір файлдың атауы мен пайыздық мөлшерін азайту сығылған немесе ашылмаған.

-V - түрлендіру

Нұсқа. Нұсқа нөмірін және компиляция опцияларын көрсетіңіз де, шығыңыз.

- # - ең үздік - ең жақсы

Сығымдалу жылдамдығын көрсетілген # таңбасын пайдаланып реттеңіз, мұнда -1 немесе - фраза ең қысқа қысу әдісін (қысуды азайтады) және -9 немесе --best ең қысқа қысу әдісін көрсетеді (ең жақсы қысу). Әдепкі сығу деңгейі -6 (яғни, жылдамдықтың есебінен жоғары қысуды азайтады).

Кеңейтілген пайдалану

Бірнеше сығылған файлдар біріктірілуі мүмкін. Бұл жағдайда gunzip бірден барлық мүшелерді шығарып алады. Мысалға:


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

Содан кейін


gunzip -c foo

балама болып табылады


cat file1 файл2

.gz файлының бір мүшесіне зиян келген жағдайда, басқа мүшелер әлі де қалпына келтірілуі мүмкін (бүлінген мүше жойылса). Дегенмен, барлық мүшелерді бірден қысу арқылы жақсы қысуды аласыз:


мысық file1 файл2 | gzip> foo.gz

қарағанда жақсы компрессорлар


gzip -c файл1 файл2> foo.gz

Жақсартылған қысуды алу үшін біріктірілген файлдарды қайта шығарғыңыз келсе, мына әрекеттерді орындаңыз:


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

Егер қысылған файл бірнеше мүшелерден құралған болса, - тізімде көрсетілген қысылмаған өлшем және CRC тек соңғы мүшеге қолданылады. Барлық мүшелер үшін қысылмаған өлшемді қажет етсеңіз, мына әрекеттерді орындауға болады:


gzip -cd file.gz | wc -c

Егер мүше кейінірек өздігінен алынатын етіп, бірнеше мүшелермен бірыңғай архивтік файл жасағыңыз келсе, tar немесе zip сияқты мұрағатшыны пайдаланыңыз. GNU tar gzip-ті ашық түрде енгізу үшін -z параметрін қолдайды. gzip алмастыру ретінде емес, Тарға қосымша ретінде жасалған.

Сондай-ақ қараңыз

қысу (1)

Gzip файл пішімі P. Deutsch, GZIP файл пішімінің 4.3 нұсқасында, , Internet RFC 1952 (мамыр 1996) нұсқасында көрсетілген. Zip дефляциясының пішімі P. Deutsch, DEFLATE сығылған деректер пішімінің техникалық сипаттамасы 1.3, , Internet RFC 1951 (мамыр, 1996) көрсетілген.

Маңызды: Жеке компьютерде пәрменді қалай пайдалану керектігін көру үшін man ( % man ) пәрменін пайдаланыңыз.