compress.1 (ncompress-4.2.4.6) | : | compress.1 (ncompress-5.0) | ||
---|---|---|---|---|
COMPRESS(1) General Commands Manual COMPRESS(1) | COMPRESS(1) General Commands Manual COMPRESS(1) | |||
NAME | NAME | |||
compress, uncompress, zcat - compress and expand data | compress, uncompress, zcat - compress and expand data | |||
SYNOPSIS | SYNOPSIS | |||
compress [ -f ] [ -v ] [ -c ] [ -V ] [ -r ] [ -b bits ] [ -- ] [ name ... | compress [ -f ] [ -k ] [ -v ] [ -c ] [ -V ] [ -r ] [ -b bits ] [ -- ] [ n | |||
] | ame ... ] | |||
uncompress [ -f ] [ -v ] [ -c ] [ -V ] [ -- ] [ name ... ] | uncompress [ -f ] [ -k ] [ -v ] [ -c ] [ -V ] [ -- ] [ name ... ] | |||
zcat [ -V ] [ -- ] [ name ... ] | zcat [ -V ] [ -- ] [ name ... ] | |||
DESCRIPTION | DESCRIPTION | |||
Compress reduces the size of the named files using adaptive Lempel-Ziv coding. Whenever possible, each | 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 own ership modes, access and modifi- | file is replaced by one with the extension .Z, while keeping the same own ership modes, access and modifi- | |||
cation times. If no files are specified, the standard input is compres sed to the standard output. Com- | cation times. If no files are specified, the standard input is compres sed to the standard output. Com- | |||
press will only attempt to compress regular files. In particular, it wil l ignore symbolic links. If a | press will only attempt to compress regular files. In particular, it wil l ignore symbolic links. If a | |||
file has multiple hard links, compress will refuse to compress it unless the -f flag is given. | file has multiple hard links, compress will refuse to compress it unless the -f flag is given. | |||
If -f is not given and compress is run in the foreground, the user is p rompted as to whether an existing | If -f is not given and compress is run in the foreground, the user is p rompted as to whether an existing | |||
file should be overwritten. | file should be overwritten. | |||
Compressed files can be restored to their original form using uncompress or zcat. | Compressed files can be restored to their original form using uncompress or zcat. | |||
uncompress takes a list of files on its command line and replaces each fi le whose name ends with .Z and | uncompress takes a list of files on its command line and replaces each fi le whose name ends with .Z and | |||
which begins with the correct magic number with an uncompressed file without the .Z. The uncompressed | which begins with the correct magic number with an uncompressed file without the .Z. The uncompressed | |||
file will have the mode, ownership and timestamps of the compressed file. | file will have the mode, ownership and timestamps of the compressed file. | |||
The -k option makes compress/uncompress keep the input files instead of a | ||||
utomatically removing them. | ||||
The -c option makes compress/uncompress write to the standard output; no files are changed. | The -c option makes compress/uncompress write to the standard output; no files are changed. | |||
zcat is identical to uncompress -c. zcat uncompresses either a list of f iles on the command line or its | zcat is identical to uncompress -c. zcat uncompresses either a list of f iles on the command line or its | |||
standard input and writes the uncompressed data on standard output. zca t will uncompress files that have | standard input and writes the uncompressed data on standard output. zca t will uncompress files that have | |||
the correct magic number whether they have a .Z suffix or not. | the correct magic number whether they have a .Z suffix or not. | |||
If the -r flag is specified, compress will operate recursively. If any of the file names specified on the | If the -r flag is specified, compress will operate recursively. If any of the file names specified on the | |||
command line are directories, compress will descend into the directory an d compress all the files it finds | command line are directories, compress will descend into the directory an d compress all the files it finds | |||
there. | there. When compressing, any files already compressed will be ignored, a | |||
nd when decompressing, any files | ||||
already decompressed will be ignored. | ||||
The -V flag tells each of these programs to print its version and patchle vel, along with any preprocessor | The -V flag tells each of these programs to print its version and patchl evel, along with any preprocessor | |||
flags specified during compilation, on stderr before doing any compressio n or uncompression. | flags specified during compilation, on stderr before doing any compressio n or uncompression. | |||
Compress uses the modified Lempel-Ziv algorithm popularized in "A Techniq ue for High Performance Data Com- | Compress uses the modified Lempel-Ziv algorithm popularized in "A Techniq ue for High Performance Data Com- | |||
pression", Terry A. Welch, IEEE Computer, vol. 17, no. 6 (June 1984), pp. | pression", Terry A. Welch, IEEE Computer, vol. 17, no. 6 (June 1984), pp | |||
8-19. Common substrings in the | . 8-19. Common substrings in the | |||
file are first replaced by 9-bit codes 257 and up. When code 512 is r | file are first replaced by 9-bit codes 257 and up. When code 512 is reac | |||
eached, the algorithm switches to | hed, the algorithm switches to | |||
10-bit codes and continues to use more bits until the limit specified by | 10-bit codes and continues to use more bits until the limit specified b | |||
the -b flag is reached (default | y the -b flag is reached (default | |||
16). Bits must be between 9 and 16. The default can be changed in the s ource to allow compress to be run | 16). Bits must be between 9 and 16. The default can be changed in the s ource to allow compress to be run | |||
on a smaller machine. | on a smaller machine. | |||
After the bits limit is attained, compress periodically checks the compre ssion ratio. If it is increas- | After the bits limit is attained, compress periodically checks the comp ression ratio. If it is increas- | |||
ing, compress continues to use the existing code dictionary. However, if the compression ratio decreases, | ing, 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 | compress discards the table of substrings and rebuilds it from scrat ch. This allows the algorithm to | |||
adapt to the next "block" of the file. | adapt to the next "block" of the file. | |||
Note that the -b flag is omitted for uncompress, since the bits paramete | Note that the -b flag is omitted for uncompress, since the bits parameter | |||
r specified during compression is | specified during compression is | |||
encoded within the output, along with a magic number to ensure that neith | encoded within the output, along with a magic number to ensure that nei | |||
er decompression of random data | ther decompression of random data | |||
nor recompression of compressed data is attempted. | nor recompression of compressed data is attempted. | |||
The amount of compression obtained depends on the size of the input, the | The amount of compression obtained depends on the size of the input, the | |||
number of bits per code, and the | number of bits per code, and the | |||
distribution of common substrings. Typically, text such as source code o | distribution of common substrings. Typically, text such as source code | |||
r English is reduced by 50-60%. | or English is reduced by 50-60%. | |||
Compression is generally much better than that achieved by Huffman codi | Compression is generally much better than that achieved by Huffman coding | |||
ng (as used in pack), or adaptive | (as used in pack), or adaptive | |||
Huffman coding (compact), and takes less time to compute. | Huffman coding (compact), and takes less time to compute. | |||
Under the -v option, a message is printed yielding the percentage of redu ction for each file compressed. | Under the -v option, a message is printed yielding the percentage of redu ction for each file compressed. | |||
-- may be used to halt option parsing and force all remaining arguments t o be treated as paths. | -- may be used to halt option parsing and force all remaining arguments t o be treated as paths. | |||
DIAGNOSTICS | DIAGNOSTICS | |||
Exit status is normally 0; if the last file is larger after (attempted) c ompression, the status is 2; if | Exit status is normally 0; if the last file is larger after (attempted) compression, the status is 2; if | |||
an error occurs, exit status is 1. | an error occurs, exit status is 1. | |||
Usage: compress [-dfvcVr] [-b maxbits] [file ...] | Usage: compress [-dfvcVr] [-b maxbits] [file ...] | |||
Invalid options were specified on the command line. | Invalid options were specified on the command line. | |||
Missing maxbits | Missing maxbits | |||
Maxbits must follow -b. | Maxbits must follow -b. | |||
file: not in compressed format | file: not in compressed format | |||
The file specified to uncompress has not been compressed. | The file specified to uncompress has not been compressed. | |||
file: compressed with xx bits, can only handle yy bits | file: compressed with xx bits, can only handle yy bits | |||
File was compressed by a program that could deal with more bi ts than the compress code on this | File was compressed by a program that could deal with more bits t han the compress code on this | |||
machine. Recompress the file with smaller bits. | machine. Recompress the file with smaller bits. | |||
file: already has .Z suffix -- no change | file: already has .Z suffix -- no change | |||
The file is assumed to be already compressed. Rename the file an d try again. | The file is assumed to be already compressed. Rename the file an d try again. | |||
file: filename too long to tack on .Z | file: filename too long to tack on .Z | |||
The file cannot be compressed because its name is longer than 1 2 characters. Rename and try | The file cannot be compressed because its name is longer th an 12 characters. Rename and try | |||
again. This message does not occur on BSD systems. | again. This message does not occur on BSD systems. | |||
file already exists; do you wish to overwrite (y or n)? | file already exists; do you wish to overwrite (y or n)? | |||
Respond "y" if you want the output file to be replaced; "n" if no t. | Respond "y" if you want the output file to be replaced; "n" if no t. | |||
uncompress: corrupt input | uncompress: corrupt input | |||
A SIGSEGV violation was detected which usually means that the inp ut file has been corrupted. | A SIGSEGV violation was detected which usually means that the inp ut file has been corrupted. | |||
Compression: xx.xx% | Compression: xx.xx% | |||
Percentage of the input saved by compression. (Relevant only for -v.) | Percentage of the input saved by compression. (Relevant only for -v.) | |||
-- not a regular file or directory: ignored | -- not a regular file or directory: ignored | |||
When the input file is not a regular file or directory, (e. g. a symbolic link, socket, FIFO, | When the input file is not a regular file or directory, (e.g. a symbolic link, socket, FIFO, | |||
device file), it is left unaltered. | device file), it is left unaltered. | |||
-- has xx other links: unchanged | -- has xx other links: unchanged | |||
The input file has links; it is left unchanged. See ln(1) for mo re information. Use the -f flag | The input file has links; it is left unchanged. See ln(1) for more information. Use the -f flag | |||
to force compression of multiply-linked files. | to force compression of multiply-linked files. | |||
-- file unchanged | -- file unchanged | |||
No savings is achieved by compression. The input remains virgin. | No savings is achieved by compression. The input remains virgin. | |||
BUGS | BUGS | |||
Although compressed files are compatible between machines with large mem | Although compressed files are compatible between machines with large memo | |||
ory, -b12 should be used for file | ry, -b12 should be used for file | |||
transfer to architectures with a small process data space (64KB or less, | transfer to architectures with a small process data space (64KB or | |||
as exhibited by the DEC PDP | less, as exhibited by the DEC PDP | |||
series, the Intel 80286, etc.) | series, the Intel 80286, etc.) | |||
Invoking compress with a -r flag will occasionally cause it to produce sp | ||||
urious error warnings of the form | ||||
"<filename>.Z already has .Z suffix - ignored" | ||||
These warnings can be ignored. See the comments in compress42.c:compdir | ||||
() in the source distribution for | ||||
an explanation. | ||||
SEE ALSO | SEE ALSO | |||
pack(1), compact(1) | pack(1), compact(1) | |||
local COMPRESS(1) | local COMPRESS(1) | |||
End of changes. 16 change blocks. | ||||
41 lines changed or deleted | 37 lines changed or added |