home *** CD-ROM | disk | FTP | other *** search
-
- COMPRESS(1) BSD COMPRESS(1)
-
-
-
- NAME
- compress, uncompress, zcat - compress and expand data
-
- SYNOPSIS
- compress [ -f ] [ -v ] [ -c ] [ -b bits ] [ file ... ]
- uncompress [ -f ] [ -v ] [ -c ] [ file ... ]
- zcat [ file ... ]
-
- DESCRIPTION
- compress reduces the size of the named files using adaptive Lempel-Ziv
- coding. Whenever possible, each file is replaced by one with the
- extension .Z, while keeping the same ownership modes, access, and
- modification times. If you do not specify a file, compress compresses
- the standard input to the standard output. Use uncompress or zcat to
- restore compressed files to their original form.
-
- compress uses the modified Lempel-Ziv algorithm popularized in "A
- Technique for High Performance Data Compression", Terry A. Welch, IEEE
- Computer, vol. 17, no. 6 (June 1984), pp. 8-19. Common substrings in the
- file are first replaced by 9-bit codes 257 and up. When code 512 is
- reached, the algorithm switches to 10-bit codes and continues to use more
- bits until the limit specified by the -b flag is reached (default 16).
- bits must be between 9 and 16. You can change the default in the source
- to allow compress to be run on a smaller machine.
-
- After the bits limit is attained, compress periodically checks the
- compression ratio. If it is increasing, compress continues to use the
- existing code dictionary. However, if the compression ratio decreases,
- compress discards the table of substrings and rebuilds it from scratch.
- This allows the algorithm to adapt to the next "block" of the file.
-
- Note that the -b flag is omitted for uncompress, since the bits parameter
- specified during compression is encoded within the output, along with a
- magic number to ensure that neither decompression of random data nor
- recompression of compressed data is attempted.
-
- The amount of compression obtained depends on the size of the input, the
- number of bits per code, and the distribution of common substrings.
- Typically, text such as source code or English is reduced by 50-60
- percent. Compression is generally much better than that achieved by
- Huffman coding (as used in pack), or adaptive Huffman coding (compact),
- and takes less time to compute.
-
- Exit status is normally 0; if the last file is larger after (attempted)
- compression, the status is 2; if an error occurs, the exit status is 1.
-
- OPTIONS
- -f Forces compression of file. This option is useful for
- compressing an entire directory, even if some of the files
- don't actually shrink. If you don't specify -f, and compress is
- run in the foreground, you are asked whether an existing file
- should be overwritten
-
- -v Causes the printing of the percentage reduction of each file.
-
- -c ("cat") Makes compress/uncompress write to the standard output;
- no files are changed. The nondestructive behavior of zcat is
- identical to that of uncompress -c.
-
- -b bits Determines the maximum number of bits to be used in the
- encoding scheme. bits must be between 9 and 16. The default is
- 16.
-
- DIAGNOSTICS
- Usage: compress [-fvc] [-b maxbits] [file ...]
- Invalid options were specified on the command line.
- Missing maxbits
- Maxbits must follow -b.
- file: not in compressed format
- The file specified to uncompress has not been compressed.
- file: compressed with xx bits, can handle only yy bits
- File was compressed by a program that could deal with more bits
- than the compress code on this machine. Recompress the file with
- smaller bits.
- file: already has .Z suffix -- no change
- The file is assumed to be already compressed. Rename the file
- and try again.
- file: filename too long to tack on .Z
- The file cannot be compressed because its name is longer than 12
- characters. Rename and try again.
- file already exists; do you wish to overwrite (y or n)?
- Respond "y" if you want the output file to be replaced; "n" if
- not.
- uncompress: corrupt input
- A SIGSEGV violation was detected which usually means that the
- input file is corrupted.
- Compression: xx.xx%
- Percentage of the input saved by compression. (Relevant only for
- -v.)
- -- not a regular file: unchanged
- When the input file is not a regular file, (for example, a
- directory), it is left unchanged.
- -- has xx other links: unchanged
- The input file has links; it is left unchanged. See ln(1) for
- more information.
- -- file unchanged
- No savings is achieved by compression. The input remains
- unchanged.
-
- BUGS
- Files that were compressed using the older compact(1) utility must be
- expanded with uncompact(1).
-
- Although compressed files are compatible between machines with large
- memory, you should use -b12 for file transfer to architectures with a
- small process data space (64KB or less).
-
- Ideally compress would be more flexible about the existence of the .Z
- suffix.
-