Pluto Free Software Users Group Pluto Free Software Users Group
COMPRESS(1) manual page Table of Contents

Nome

compress, uncompress, zcat - comprime ed espande dati

Sintassi

compress [ -f ] [ -v ] [ -c ] [ -V ] [ -b bits ] [ name ... ]
uncompress [ -f ] [ -v ] [ -c ] [ -V ] [ name ... ]
zcat [ -V ] [ name ... ]

Descrizione

Compress riduce la grandezza dei file usando la codifica adattativa di Lempel-Ziv. Quando possibile, ogni file viene sostituito da uno con estensione .Z, mentre vengono mantenuti gli stessi permessi di possesso, accesso e modifica. Se non vengono specificati file, lo standard input viene compresso sullo standard output. I file compressi possono essere ripristinati alla loro forma originale usando uncompress o zcat.

L'opzione -f forzerà la compressione di name. Questo è utile per la compressione di una intera directory, anche se alcuni dei file non si rimpiccioliscono effettivamente. Se -f non viene specificato e compress viene eseguito in foreground, all'utente viene chiesto se il file esistente debba essere sovrascritto.

L'opzione -c fa si che compress/uncompress scriva sullo standard output; nessun file viene cambiato. Il comportamento non distruttivo di zcat è identico a quello di uncompress -c.

Compress usa l'algoritmo modificato Lempel-Ziv divulgato in "A Technique for High Performance Data Compression", Terry A. Welch, IEEE Computer, vol. 17, no. 6 (June 1984), pp. 8-19. Le sottostringhe comuni nel file vengono prima sostituite dai codici a 9 bit da 257 in poi. Quando viene raggiunto il codice 512, l'algoritmo passa ai codici a 10 bit e continua a usare più bit fino a quando il limite specificato dal flag -b viene raggiunto (per default pari a 16). I bit devono essere compresi tra 9 e 16. Il default può essere cambiato nel sorgente per permettere a compress di essere eseguito su una macchina più piccola.

Dopo che il limite dei bit viene raggiunto, compress periodicamente controlla il rapporto di compressione. Se sta aumentando, compress continua a usare l'esistente dizionario del codice. Tuttavia, se il rapporto di compressione diminuisce, compress scarta la tabella di sottostringhe e la ricostruisce da capo. Questo permette all'algoritmo di adattarsi al prossimo "blocco" del file.

Notare che il flag -b è omesso per uncompress, poiché il parametro dei bit specificato durante la compressione è codificato dentro l'output, assieme a un numero magico per assicurare che non venga tentata né la decompressione di dati random né la recompressione di dati compressi.

La quantità di compressione ottenuta dipende dalla grandezza dell'input, dal numero dei bit per codice e dalla distribuzione di sottostringhe comuni. Tipicamente, un testo come il codice sorgente o un testo inglese viene accorciato del 50-60%. La compressone è generalmente molto migliore di quella raggiunta dalla codifica di Huffman (come quella usata in pack), o la codifica adattativa di Huffman (compact), e impiega meno tempo per computare.

Sotto l'opzione -v, viene stampato un messaggio dando la percentuale di riduzione per ogni file compresso.

Se viene specificata l'opzione -V, vengono stampate su stderr l'attuale versione e opzioni di compilazione.

Il codice di uscita è normalmente 0; se l'ultimo file è più grande dopo una (tentata) compressione, il codice è 2; se capita un errore, il codice è 1.

Vedere Anche

pack(1) , compact(1)

Diagnostica

Utilizzo: compress [-dfvcV] [-b maxbits] [file ...] Sono state specificate opzioni non valide nella riga di comando. Manca il parametro maxbits Maxbits deve seguire -b. file: non in formato compresso. Il file specificato a uncompress non è stato compresso. file: compresso con xx bit, può solo gestire yy bit Il file è stato compresso con un programma che potrebbe manipolare più bit del codice di compress su questa macchina. Ricomprimere il file con meno bit. file: ha già il suffisso .Z -- niente cambiamenti Il file si suppone sia già compresso. Rinomina il file e prova di nuovo. file: nome del file troppo lungo per aggiungere .Z Il file non può essere compresso perché il suo nome è più lungo di 12 caratteri. Rinomina il file e prova di nuovo. Questo messaggio non capita sui sistemi BSD. Il file esiste già ; vuoi sovrascriverlo (s o n)? Rispondi "y" se vuoi che il file di output venga sostituito; "n" altrimenti. uncompress: input corrotto. Una violazione SIGSEGV è stata rilevata che di solito significa che il file di input è stato corrotto. Compressione: xx.xx% Percentuale dell'input salvata dalla compressione. (Rilevante solo per -v.) -- non è un file regolare: immutato. Quando il file di input non è un file regolare, (p.e. una directory), viene lasciato inalterato. -- ha xx altri links: immutato. Il file di input ha dei link; viene lasciato immutato. Vedere ln(1) per ulteriori informazioni. -- file immutato. Nessun salvataggio raggiunto dalla compressione. L'input rimane intatto.

Bachi

Sebbene i file compressi siano compatibili tra macchine con la memoria grande, -b12 dovrebbe essere usato per il trasferimento di file verso architetture con un piccolo spazio per i dati del processo (64KB o meno, come mostrato dalle macchine della serie DEC PDP, dall'Intel 80286, ecc.)


Table of Contents

HOWTO
Guide LDP
Italian HOWTO
AppuntiLinux
LDR
Pagine man
      man1
      man2
      man3
      man4
      man5
      man6
      man7
      man8
FAQ di icl
Gnome
Altri documenti
Mirror ildp
Meeting
Pluto Journal
Mailing List
Disclaimer
Area ftp
Cerca
Pluto home

Copyright © 2001 Pluto Free Software Users Group
pluto@pluto.linux.it

Valid HTML 4.01!

webmaster @ pluto.linux.it
Il Pluto ringrazia i suoi sponsor.