packages icon



 FREEZE(1)                                                         FREEZE(1)
                                    local



 NAME
      freeze, unfreeze, melt, fcat  -  compress and uncompress files

 SYNOPSIS
      freeze [ -cdfvVgx ] [ filename | type ... ]
      unfreeze [ -cfvV ] [ filename ... ]
      melt [ -cfvV ] [ filename ... ]
      fcat [ filename ... ]

 DESCRIPTION
      Compresses the specified files or standard input.  Each file is
      replaced by a file with the extension .F, but only if the file got
      smaller. If no files are specified, the compression is applied to the
      standard input and is written to standard output regardless of the
      results.  Compressed files can be restored to their original form by
      specifying the -d option, or by running melt or unfreeze (both linked
      to freeze), on the .F files or the standard input.

      If the output file exists, it will not be overwritten unless the -f
      flag is given.  If -f is not specified and freeze is run in the
      foreground, the user is prompted as to whether the file should be
      overwritten.

      If the -g flag is given, a slightly less powerful (compression rate is
      1.5% less), but somewhat faster heuristic is used. This flag can be
      used more than once (this mode is quite useful when freezing bitmaps)
      for additional speedup.

      If you want to improve compression rate at the cost of speed, use -x
      flag. It means "maximum compression" (the speed may degrade
      substantially when freezing bitmaps).

      If the -f flag is given, all files specified are replaced with .F
      files - even if the file didn't get smaller.

      When file names are given, the ownership (if run by root), modes,
      accessed and modified times are maintained between the file and its .F
      version.  In this respect, freeze can be used for archival purposes,
      yet can still be used with make(1) after melting.

      The -c option causes the results of the freeze/melt operation to be
      written to stdout; no files are changed.  The fcat program is the same
      as specifying -c to melt (all files are unpacked and written to
      stdout).

      The -v (verbose) option causes the diagnostics (at the end of each
      file processing) to be printed to stderr, and the -vv option causes
      the progress indicator to be drawn to the same place.

      Type is a token preceded by a '+' or a '--', which defines the type of
      following files in the command string. An explicite definition of the



                                    - 1 -         Formatted:  April 19, 2024






 FREEZE(1)                                                         FREEZE(1)
                                    local



      file's type can give up to 2% of additional compression.  The list of
      types is stored in file /usr/local/lib/freeze.cnf.  Types may be
      abbreviated while not ambigious. You can also determine values for the
      static Huffman table by using a list of 8 numbers separated by commas
      instead of type.

      Freeze uses the Lempel-Ziv algorithm on the first pass and the dynamic
      Huffman algorithm on the second one. The size of sliding window is 8K,
      and the maximum length of matched string is 256.  The positions on the
      window are coded using a static Huffman table.

      A two byte magic number is prepended to the file to ensure that
      neither melting of random text nor refreezing of already frozen text
      are attempted.  In addition, the characteristics of the static Huffman
      table being used during freeze is written to the file so that these
      characteristics may be adapted to concrete conditions.

      The amount of compression obtained depends on the size of the input
      file and the distribution of character substrings and their
      probabilities.  Typically, text files, such as C programs, are reduced
      by 60-75%, executable files are reduced by 50%.  Compression is
      generally much better than that achieved by LZW coding (as used in
      compress), or Huffman coding (pack), though takes more time to
      compute.

      If the -V (version) flag is given, the program's version number and
      compilation options are printed.

      The exit status is normally 0; if the last file gets bigger after
      freezing, the exit status is 2; if an error occurs, the exit status is
      1.

 SEE ALSO
      compact(1), pack(1), compress(1)

 DIAGNOSTICS
      Unknown flag: 'x'; Usage: freeze [-cdfvVg] [file|+type ...]
              Invalid options were specified on the command line.
      file: not in frozen format
              The specified file has not been frozen.
      file: already has .F suffix -- no change
              Cannot compress a file that has a ".F" suffix.  mv(1) the file
              to a different name and try again.
      file: filename too long to tack on .F
              The specified file cannot be compressed because its filename
              is longer than 12 characters.  mv(1) the file to a different
              name and try again.  This message does not occur on 4.XBSD
              systems.
      file already exists; do you wish to overwrite (y or n)?
              Respond "y" if you want the output file to be replaced; "n" if
              you want it to be left alone.



                                    - 2 -         Formatted:  April 19, 2024






 FREEZE(1)                                                         FREEZE(1)
                                    local



      file: xx%
              or
      xxxK
              These message fragments are written during the processing of a
              file, if -vv option was given in the command line (in
              percents, if the length of file being processed is known; in
              Kbytes otherwise).
      Freezing: xx.xx% (y.yy bits)
              This message fragment gives the percentage of the input file
              that has been saved by freezing and the number of remaining
              bits per byte of original file.
      -- not a regular file: unchanged
              This message fragment is written when the input file is not a
              regular file.  The input file is left unchanged.
      -- has xx other links: unchanged
              This message fragment is written when the input file has
              links.  The input file is left unchanged.  See ln(1) for more
              information.
      -- file unchanged
              This message fragment is written when no savings are achieved
              by freezing.  The input file is left unchanged.
      -- replaced with file
              This message fragment is written when a file has been
              sucessfully frozen/melt.
      Using " type " type
              This message indicates a successful switching to position
              table for mentioned file type.
      " xxx " - no such file type
              or
      xxx - a list of 8 numbers expected
              This message means the given file type does not exist or the
              given string contains a comma, but is not a valid list of
              values for static Huffman table.
      melt: corrupt input
              This message fragment is written when an error in header or
              unexpected end of frozen file is detected. Partial (or empty,
              is there was an error in the header) file is created.
      already frozen -- file unchanged
              This message fragment is written when an input file already
              has Freeze's magic header.
      Invalid position table
              or
      " type " - invalid entry
              These messages appear only if Freeze has been made with
              incorrect data for static Huffman table. It does never appear
              when freeze is called from a public access directory.
      Unknown header format
              Unknown values of flag bits were discovered in the header of
              frozen file.





                                    - 3 -         Formatted:  April 19, 2024






 FREEZE(1)                                                         FREEZE(1)
                                    local



 BUGS
      Found bugs descriptions, incompatibilities, etc.  please send to
      leo@ipmce.su.



















































                                    - 4 -         Formatted:  April 19, 2024