Zcat - Comando de Linux - Comando Unix

Nom

gzip, gunzip, zcat - comprimeix o expandeix els fitxers

Sinopsi

gzip [ -acdfhlLnNrtvV19 ] [ -S sufix ] [ nom ... ]
gunzip [ -acfhlLnNrtvV ] [ -S sufix ] [ nom ... ]
zcat [ -fhLV ] [ nom ... ]

Descripció

Gzip redueix la mida dels fitxers amb la codificació Lempel-Ziv (LZ77). Sempre que sigui possible, cada fitxer se substitueix per un altre amb l'extensió .gz , mantenint els mateixos modes de propietat, accés i modificació. (L'extensió predeterminada és -gz per a VMS, z per a MS-DOS, OS / 2 FAT, Windows NT FAT i Atari). Si no s'especifiquen cap fitxer, o si un nom de fitxer és "-", l'entrada estàndard es comprimeix a la norma sortida. Gzip només intentarà comprimir fitxers regulars. En particular, ignorarà els enllaços simbòlics.

Si el nom del fitxer comprimit és massa llarg per al seu sistema de fitxers, gzip la trunca. Gzip intenta truncar només les parts del nom del fitxer de més de 3 caràcters. (Una part està delimitada pels punts.) Si el nom només està format per parts petites, les parts més llargues es truncaran. Per exemple, si els noms de fitxer estan limitats a 14 caràcters, gzip.msdos.exe es comprimeix a gzi.msd.exe.gz. Els noms no es truncaran en sistemes que no tenen un límit en la longitud del nom del fitxer.

De forma predeterminada, gzip manté el nom del fitxer original i la marca de temps en el fitxer comprimit. Aquests s'utilitzen en descomprimir el fitxer amb l'opció -N . Això és útil quan el nom del fitxer comprimit s'ha truncat o quan el segell de temps no s'ha conservat després d'una transferència de fitxers.

Els fitxers comprimits es poden restaurar a la seva forma original usant gzip -d o gunzip o zcat. Si el nom original guardat en el fitxer comprimit no és adequat per al seu sistema de fitxers, un nou nom es construeix des de l'original per fer-lo legal.

Gunzip porta una llista de fitxers a la seva línia d'ordres i reemplaça a cada fitxer el nom finalitza amb .gz, -gz, .z, -z, _z o .Z i que comença amb el número màgic correcte amb un fitxer sense comprimir sense l'extensió original . gunzip també reconeix les extensions especials .tgz i .taz com a abreviatures per .tar.gz i .tar.Z respectivament. En comprimir, gzip utilitza l'extensió .tgz si és necessari en lloc de truncar un fitxer amb una extensió .tar .

Gunzip pot descomprimir fitxers creats per gzip, zip, compress, compress-H o pack. La detecció del format d'entrada és automàtica. Quan s'utilitzen els dos primers formats, gunzip verifica un CRC de 32 bits. Per al paquet, gunzip comprova la longitud no comprimida. El format estàndard de compressió no estava dissenyat per permetre controls de coherència. No obstant això, el gunzip de vegades és capaç de detectar un arxiu .Z dolent. Si obteniu un error en descomprimir un fitxer .Z , no assumeixi que el fitxer .Z és correcte simplement perquè la descompressió estàndard no es queixa. Això generalment significa que la descompressió estàndard no comprova la seva entrada, i genera feliçment la producció d'escombraries. La compressió SCO -H format (mètode de compressió de lzh) no inclou un CRC, però també permet alguns controls de consistència.

Els fitxers creats per zip només es poden descomprimir per gzip si tenen un únic membre comprimit amb el mètode de "deflació". Aquesta funció només està dissenyada per ajudar a la conversió de fitxers tar.zip al format tar.gz. Per extreure fitxers zip amb diversos membres, utilitzeu unzip en comptes de gunzip.

El zcat és idèntic al gunzip -c. (En alguns sistemes, zcat es pot instal·lar com a gzcat per preservar el vincle original per comprimir). Zcat no comprimeix una llista de fitxers a la línia de comandaments o la seva entrada estàndard i escriu les dades no comprimides en la sortida estàndard. zcat descomprimirà els fitxers que tenen el número màgic correcte si tenen un sufix .gz o no.

Gzip utilitza l'algorisme Lempel-Ziv utilitzat en zip i PKZIP. La quantitat de compressió obtinguda depèn de la mida de l'entrada i de la distribució de subcadenes comunes. Normalment, el text com el codi font o l'anglès es redueix en un 60-70%. La compressió generalment és molt millor que la obtinguda per LZW (com s'utilitza en comprimir ), la codificació Huffman (tal com s'utilitza en el paquet ), o la codificació adaptativa Huffman ( compacte ).

La compressió es realitza sempre, fins i tot si el fitxer comprimit és lleugerament més gran que l'original. La pitjor expansió del cas és uns quants bytes per a l'encapçalament del fitxer gzip, més 5 bytes per cada bloc de 32 KB, o un percentatge d'expansió del 0,015% per a fitxers grans. Tingueu en compte que el nombre real de blocs de disc usats gairebé mai augmenta. gzip conserva el mode, la propietat i les marques de temps dels fitxers en comprimir o descomprimir.

OPCIONS

-a --ascii

Mode de text Ascii: converteix l'extrem de les línies utilitzant convencions locals. Aquesta opció només s'admet en alguns sistemes que no siguin Unix. Per MS-DOS, CR LF es converteix a LF quan es comprimeix, i LF es converteix a CR LF quan es descomprimeix.

-c --stdout - to-stdout

Escriu la sortida a la sortida estàndard; mantingueu sense modificar els fitxers originals. Si hi ha diversos fitxers d'entrada, la sortida consisteix en una seqüència de membres comprimits independentment. Per obtenir una millor compressió, concorda tots els fitxers d'entrada abans de comprimir-los.

-d --decompress - uncompress

Descomprimir.

-f --force

Comprimir o descompressar forces, fins i tot si el fitxer té múltiples enllaços o el fitxer corresponent ja existeix, o si les dades comprimides es llegeixen o s'escriuen en un terminal. Si les dades d'entrada no es troben en un format reconegut per gzip, i si l'opció --stdout també s'ofereix, copieu les dades d'entrada sense canviar-vos cap a l'ouput estàndard: deixeu que zcat es comporti com a gat. Si -f no es dóna, i quan no s'executa en segon pla, gzip demana que verifiqui si un fitxer existent s'ha de sobreescriure.

-h --help

Mostra una pantalla d'ajuda i surt.

-l --list

Per a cada fitxer comprimit, indiqueu els següents camps:


mida comprimida: mida del fitxer comprimit
mida no comprimida: mida del fitxer no comprimit
ràtio: ràtio de compressió (0,0% si no es coneix)
Uncompressed_name: nom del fitxer no comprimit

La mida no comprimit es dóna com a -1 per a fitxers que no estan en format gzip, com ara fitxers comprimits .Z. Per obtenir la mida no comprimit per a tal fitxer, podeu utilitzar:


zcat file.Z | wc -c

En combinació amb l'opció --verbose, també es mostren els següents camps:


mètode: mètode de compressió
CRC: CRC de 32 bits de les dades no comprimides
data i hora: segell de temps per al fitxer no comprimit

Els mètodes de compressió actualment compatibles són deflació, compressió, lzh (SCO compress-H) i paquet. El crc s'ofereix com a ffffffff per un fitxer no en format gzip.

Amb --name, el nom, la data i l'hora no comprimits són aquells emmagatzemats en el fitxer de compressió si estan presents.

Amb --verbose, també es mostren els imports totals i compressió de tots els fitxers, tret que es desconeixin algunes mides. Amb --quiet, el títol i les línies totals no es mostren.

-L --license

Mostra la llicència gzip i surt.

-n --no-nom

Quan comprimiu, no deseu el nom del fitxer original i el segell de temps de manera predeterminada. (El nom original sempre es guarda si el nom s'ha de truncar.) Quan es descomprimeixi, no restauri el nom del fitxer original si és present (elimineu només el sufix gzip del nom del fitxer comprimit) i no restauri el segell de temps original si és present (copieu-lo des del fitxer comprimit). Aquesta opció és la predeterminada quan es descomprimeix.

-N - nom

Quan comprimiu, deseu sempre el nom del fitxer original i el segell de temps; aquest és el valor predeterminat. En descomprimir, restabliu el nom del fitxer original i el segell de temps si està present. Aquesta opció és útil en sistemes que tenen un límit en la longitud del nom del fitxer o quan s'ha perdut el segell d'hora després d'una transferència de fitxers.

-q --quiet

Suprimeix totes les advertències.

-r - recursiu

Viatja l'estructura del directori recursivament. Si algun dels noms de fitxer especificats a la línia d'ordres són directoris, gzip baixarà al directori i comprimirà tots els fitxers que hi trobi (o descomprimiu-los en el cas de gunzip ).

-S .suf --suffix .suf

Utilitzeu el sufix .suf en comptes de .gz. Qualsevol sufix es pot donar, però s'han de evitar altres sufixos diferents de .z i .gz per evitar confusions quan els fitxers es transfereixen a altres sistemes. Un sufix nul·la obliga a gunzip a provar la descompressió en tots els fitxers donats independentment del sufix, com en:


gunzip -S "" * (*. * per a MS-DOS)

Les versions anteriors de gzip usaven el sufix .z. Això es va canviar per evitar un conflicte amb el paquet (1).

-t --test

Prova Comproveu la integritat del fitxer comprimit.

-v - verbose

Verbose. Mostra el nom i la reducció percentual de cada fitxer comprimit o descomprimit.

-V --versió

Versió. Mostra el número de versió i les opcions de compilació i surt.

- # --fast --best

Regular la velocitat de compressió utilitzant el dígit especificat # , on -1 o --fast indica el mètode de compressió més ràpid (menys compressió) i -9 o --best indica el mètode de compressió més lent (millor compressió). El nivell de compressió predeterminat és -6 (és a dir, esbiaixat cap a una alta compressió a costa de la velocitat).

Ús avançat

Es poden concatenar múltiples fitxers comprimits. En aquest cas, gunzip extreu tots els membres alhora. Per exemple:


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

Després


gunzip -c foo

és equivalent a


cat file1 file2

En cas de danys a un membre d'un fitxer .gz, encara es poden recuperar altres membres (si es treu el membre dañado). Tanmateix, podeu comprimir millor comprimint tots els membres alhora:


cat file1 file2 | gzip> foo.gz

comprimeix millor que


gzip -c file1 file2> foo.gz

Si voleu tornar a comprimir fitxers concatenats per obtenir una millor compressió, feu el següent:


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

Si un fitxer comprimit està format per diversos membres, la mida no comprimida i el CRC notificats per l'opció --list només s'apliquen a l'últim membre. Si necessiteu la mida no comprimit per a tots els membres, podeu utilitzar:


gzip-cd file.gz | wc -c

Si voleu crear un únic fitxer amb diversos membres perquè els membres puguin ser extrets de manera independent, utilitzeu un arxiu com ara tar o zip. GNU tar suporta l'opció -z per invocar gzip de forma transparent. El gzip està dissenyat com a complement del tar , no com a substitut.

VEGEU TAMBÉ

comprimeix (1)

El format del fitxer gzip s'especifica en P. Deutsch, especificació del format del fitxer GZIP versió 4.3, , Internet RFC 1952 (maig de 1996). El format de deflació de zip està especificat en P. Deutsch, especificació de format de dades comprimida DEFLATE versió 1.3, , Internet RFC 1951 (maig de 1996).

Important: utilitzeu l'ordre man ( % home ) per veure com s'utilitza una comanda a l'ordinador en particular.