Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cat(1)

compress(1)



pack(1)                        DG/UX R4.11MU05                       pack(1)


NAME
       pack, pcat, unpack - compress and expand files

SYNOPSIS
       pack [ - ] [ -f ] name ...

       pcat name ...

       unpack name ...

DESCRIPTION
       pack attempts to store the specified files in a compressed form.
       Wherever possible (and useful), each input file name is replaced by a
       packed file name.z with the same access modes, access and modified
       dates, and owner as those of name.  The -f option will force packing
       of name.  This is useful for causing an entire directory to be packed
       even if some of the files will not benefit.  If pack is successful,
       name will be removed.  Packed files can be restored to their original
       form using unpack or pcat.

       pack uses Huffman (minimum redundancy) codes on a byte-by-byte basis.
       If the - argument is used, an internal flag is set that causes the
       number of times each byte is used, its relative frequency, and the
       code for the byte to be printed on the standard output.  Additional
       occurrences of - in place of name will cause the internal flag to be
       set and reset.

       The amount of compression obtained depends on the size of the input
       file and the character frequency distribution.  Because a decoding
       tree forms the first part of each .z file, it is usually not
       worthwhile to pack files smaller than three blocks, unless the
       character frequency distribution is very skewed, which may occur with
       printer plots or pictures.

       Typically, text files are reduced to 60-75% of their original size.
       Load modules, which use a larger character set and have a more
       uniform distribution of characters, show little compression, the
       packed versions being about 90% of the original size.

       pack returns a value that is the number of files that it failed to
       compress.

       No packing will occur if:

        the file appears to be already packed;
        the file name has more than 76 characters;
        the file has links;
        the file is a directory;
        the file cannot be opened;
        no disk storage blocks will be saved by packing;
        a file called name.z already exists;
        the .z file cannot be created;
        an I/O error occurred during processing.

       The last segment of the file name must contain no more than 76
       characters to allow space for the appended .z extension.  Directories
       cannot be compressed.

       pcat does for packed files what cat(1) does for ordinary files,
       except that pcat cannot be used as a filter.  The specified files are
       unpacked and written to the standard output.  Thus to view a packed
       file named name.z use:

              pcat name.z
       or just:
              pcat name

       To make an unpacked copy, say nnn, of a packed file named name.z
       (without destroying name.z) use the command:

              pcat name >nnn

       pcat returns the number of files it was unable to unpack.  Failure
       may occur if:

        the file name (exclusive of the .z) has more than 76 characters;
        the file cannot be opened;
        the file does not appear to be the output of pack.

       unpack expands files created by pack.  For each file name specified
       in the command, a search is made for a file called name.z (or just
       name, if name ends in .z).  If this file appears to be a packed file,
       it is replaced by its expanded version.  The new file has the .z
       suffix stripped from its name, and has the same access modes, access
       and modification dates, and owner as those of the packed file.

       Unpack returns a value that is the number of files it was unable to
       unpack.  Failure may occur for the same reasons that it may in pcat,
       as well as for the following:

              a file with the ``unpacked'' name already exists;
              if the unpacked file cannot be created.


SEE ALSO
       cat(1), compress(1).


Licensed material--property of copyright holder(s)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026