compact(1) compact(1)
NAME
compact, uncompact, ccat - compress and uncompress files,
and cat them
SYNOPSIS
compact [name...]
uncompact [name...]
ccat [file...]
DESCRIPTION
compact compresses the named files using an adaptive Huffman
code. If no filenames are given, the standard input is
compacted to the standard output. compact operates as an
on-line algorithm. Each time a byte is read, it is encoded
immediately according to the current prefix code. This code
is an optimal Huffman code for the set of frequencies seen
so far. It is unnecessary to prefix a decoding tree to the
compressed file since the encoder and the decoder start in
the same state and stay synchronized. Furthermore, compact
and uncompact can operate as filters. In particular,
... | compact | uncompact | ...
operates as a (very slow) no-op.
When an argument file is given, it is compacted and the
resulting file is placed in file.C ; file is unlinked. The
first two bytes of the compacted file code the fact that the
file is compacted. This code is used to prohibit
recompaction.
The amount of compression to be expected depends on the type
of file being compressed. Typical values of compression
are: Text (38%), Pascal Source (43%), C Source (36%) and
Binary (19%). These values are the percentages of file
bytes reduced.
uncompact restores the original file from a file compressed
by compact. If no filenames are given, the standard input is
uncompacted to the standard output.
ccat cats the original file from a file compressed by
compact, without uncompressing the file.
RESTRICTION
The last segment of the filename must contain fewer than
thirteen characters to allow space for the appended `.C'.
FILES
/usr/ucb/compact
/usr/ucb/ccat
Page 1 (last mod. 1/20/87)
compact(1) compact(1)
/usr/ucb/uncompact
*.C compacted file created by compact, removed by
uncompact
SEE ALSO
pack(1),
Gallager, Robert G., ``Variations on a Theme of Huffman,''
I.E.E.E. Transactions on Information Theory, vol. IT-24, no.
6, November 1978, pp. 668 - 674.
Page 2 (last mod. 1/20/87)