1FREEZE(1)                   General Commands Manual                  FREEZE(1)
2
3
4

NAME

6       freeze, unfreeze, melt, fcat  -  compress and uncompress files
7

SYNOPSIS

9       freeze [ -cdfvVgx ] [ filename | type ...  ]
10       unfreeze [ -cfvV ] [ filename ...  ]
11       melt [ -cfvV ] [ filename ...  ]
12       fcat [ filename ...  ]
13

DESCRIPTION

15       Compresses  the  specified  files  or  standard  input.   Each  file is
16       replaced by a file with the extension .F, but  only  if  the  file  got
17       smaller.  If  no files are specified, the compression is applied to the
18       standard input and is written to  standard  output  regardless  of  the
19       results.   Compressed  files  can be restored to their original form by
20       specifying the -d option, or by running melt or unfreeze  (both  linked
21       to freeze), on the .F files or the standard input.
22
23       If  the  output  file  exists, it will not be overwritten unless the -f
24       flag is given.  If -f is not specified and freeze is run in  the  fore‐
25       ground, the user is prompted as to whether the file should be overwrit‐
26       ten.
27
28       If the -g flag is given, a slightly less powerful (compression rate  is
29       1.5%  less),  but  somewhat  faster heuristic is used. This flag can be
30       used more than once (this mode is quite useful when  freezing  bitmaps)
31       for additional speedup.
32
33       If  you  want  to improve compression rate at the cost of speed, use -x
34       flag. It means "maximum compression" (the speed  may  degrade  substan‐
35       tially when freezing bitmaps).
36
37       If the -f flag is given, all files specified are replaced with .F files
38       - even if the file didn't get smaller.
39
40       When file names are given, the  ownership  (if  run  by  root),  modes,
41       accessed  and modified times are maintained between the file and its .F
42       version.  In this respect, freeze can be used  for  archival  purposes,
43       yet can still be used with make(1) after melting.
44
45       The  -c  option  causes  the results of the freeze/melt operation to be
46       written to stdout; no files are changed.  The fcat program is the  same
47       as  specifying  -c  to melt (all files are unpacked and written to std‐
48       out).
49
50       The -v (verbose) option causes the diagnostics (at the end of each file
51       processing)  to  be  printed  to  stderr, and the -vv option causes the
52       progress indicator to be drawn to the same place.
53
54       Type is a token preceded by a '+' or a '--', which defines the type  of
55       following  files  in the command string. An explicite definition of the
56       file's type can give up to 2% of additional compression.  The  list  of
57       types  is stored in file /usr/lib/freeze.cnf.  Types may be abbreviated
58       while not ambigious. You can also determine values for the static Huff‐
59       man  table  by using a list of 8 numbers separated by commas instead of
60       type.
61
62       Freeze uses the Lempel-Ziv algorithm on the first pass and the  dynamic
63       Huffman  algorithm on the second one. The size of sliding window is 8K,
64       and the maximum length of matched string is 256.  The positions on  the
65       window are coded using a static Huffman table.
66
67       A two byte magic number is prepended to the file to ensure that neither
68       melting of random text  nor  refreezing  of  already  frozen  text  are
69       attempted.   In addition, the characteristics of the static Huffman ta‐
70       ble being used during freeze is written to the file so that these char‐
71       acteristics may be adapted to concrete conditions.
72
73       The  amount  of  compression  obtained depends on the size of the input
74       file and the distribution of character substrings and their  probabili‐
75       ties.   Typically,  text  files,  such  as  C  programs, are reduced by
76       60-75%, executable files are reduced by 50%.  Compression is  generally
77       much  better than that achieved by LZW coding (as used in compress), or
78       Huffman coding (pack), though takes more time to compute.
79
80       If the -V (version) flag is given, the  program's  version  number  and
81       compilation options are printed.
82
83       The  exit  status  is  normally  0;  if the last file gets bigger after
84       freezing, the exit status is 2; if an error occurs, the exit status  is
85       1.
86

SEE ALSO

88       compact(1), pack(1), compress(1)
89

DIAGNOSTICS

91       Unknown flag: ´x´; Usage: freeze [-cdfvVg] [file|+type ...]
92               Invalid options were specified on the command line.
93       file: not in frozen format
94               The specified file has not been frozen.
95       file: already has .F suffix -- no change
96               Cannot  compress a file that has a ".F" suffix.  mv(1) the file
97               to a different name and try again.
98       file: filename too long to tack on .F
99               The specified file cannot be compressed because its filename is
100               longer  than 12 characters.  mv(1) the file to a different name
101               and try again.  This message does not occur on 4.XBSD systems.
102       file already exists; do you wish to overwrite (y or n)?
103               Respond "y" if you want the output file to be replaced; "n"  if
104               you want it to be left alone.
105       file: xx%
106               or
107       xxxK
108               These  message fragments are written during the processing of a
109               file, if -vv option was given in the command line (in percents,
110               if  the length of file being processed is known; in Kbytes oth‐
111               erwise).
112       Freezing: xx.xx% (y.yy bits)
113               This message fragment gives the percentage of  the  input  file
114               that  has  been  saved  by freezing and the number of remaining
115               bits per byte of original file.
116       -- not a regular file: unchanged
117               This message fragment is written when the input file is  not  a
118               regular file.  The input file is left unchanged.
119       -- has xx other links: unchanged
120               This message fragment is written when the input file has links.
121               The input file is left unchanged.  See ln(1) for more  informa‐
122               tion.
123       -- file unchanged
124               This  message  fragment is written when no savings are achieved
125               by freezing.  The input file is left unchanged.
126       -- replaced with file
127               This message fragment is written when a file has  been  sucess‐
128               fully frozen/melt.
129       Using " type " type
130               This message indicates a successful switching to position table
131               for mentioned file type.
132       " xxx " - no such file type
133               or
134       xxx - a list of 8 numbers expected
135               This message means the given file type does not  exist  or  the
136               given  string contains a comma, but is not a valid list of val‐
137               ues for static Huffman table.
138       melt: corrupt input
139               This message fragment is written when an  error  in  header  or
140               unexpected  end  of frozen file is detected. Partial (or empty,
141               is there was an error in the header) file is created.
142       already frozen -- file unchanged
143               This message fragment is written when an input file already has
144               Freeze's magic header.
145       Invalid position table
146               or
147       " type " - invalid entry
148               These  messages appear only if Freeze has been made with incor‐
149               rect data for static Huffman table. It does never  appear  when
150               freeze is called from a public access directory.
151       Unknown header format
152               Unknown  values  of  flag bits were discovered in the header of
153               frozen file.
154

BUGS

156       Found  bugs  descriptions,  incompatibilities,  etc.   please  send  to
157       leo@ipmce.su.
158
159
160
161                                     local                           FREEZE(1)
Impressum