NAME
	  pack,	pcat, unpack - Compresses and expands files

     SYNOPSIS
	  pack [-] [-f]	file ...

	  unpack file[.z] ...

	  pcat file[.z]	...


	  The pack command stores the specified	file in	a compressed
	  form.	 The input file	is replaced by a packed	file with a
	  name derived from the	original filename (file.z), with the
	  same access modes, access and	modification dates, and	owner
	  as the original file.

     FLAGS
	  -   Displays statistics about	the input files. The statis-
	      tics are calculated from a Huffman minimum redundancy
	      code tree	built on a byte-by-byte	basis.	Repeating the
	      -	(dash) on the command line toggles this	function.

	  -f  Forces compaction	of input files.


     DESCRIPTION
	  Directories cannot be	compressed.

	  If pack cannot create	a smaller file,	it stops processing
	  and reports that it is unable	to save	space, unless you
	  specify -f.  (The -f flag forces packing to occur even if
	  the files cannot benefit from	packing.)  A failure to	save
	  space	generally happens with small files or files with uni-
	  form character distribution.

	  The amount of	space saved 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, you will
	  generally not	be able	to save	space with files smaller than
	  three	blocks.	 Typically, text files are reduced 25 to 40
	  percent.

	  The exit value of the	pack command is	the number of files
	  that it could	not pack.  Packing is not done under any one
	  of the following conditions:


	    o  The file	is already packed.

	    o  The file	has links.

	    o  The file	is a directory.

	    o  The file	cannot be opened.

	    o  No storage blocks are saved by packing.

	    o  A file called file.z already exists.

	    o  The .z file cannot be created.

	    o  An I/O error occurs during processing.


	The pcat Command
	  The pcat command reads the specified files, unpacks them,
	  and writes them to standard output.

	  The exit value of pcat is the	number of files	it was unable
	  to unpack.  A	file cannot be unpacked	if any one of the fol-
	  lowing occurs:


	    o  The filename (exclusive of the .z) has more than	12
	       bytes.

	    o  The file	cannot be opened.

	    o  The file	is not a packed	file.


	The unpack Command
	  The unpack command expands files created by pack.  For each
	  file specified, unpack searches for a	file called file.z.
	  If this file is a packed file, unpack	replaces it by its
	  expanded version.  The unpack	command	names the new filename
	  by removing the .z suffix from file.	The new	file has the
	  same access modes, access and	modification dates, and	owner
	  as the original packed file.

	  The exit value is the	number of files	the unpack command was
	  unable to unpack.  A file cannot be unpacked if any one of
	  the following	occurs:


	    o  The file	cannot be opened.

	    o  The file	is not a packed	file.

	    o  A file with the unpacked	filename already exists.

	    o  The unpacked file cannot	be created.

     EXAMPLES
	   1.  To compress files, enter:

	       pack chap1 chap2



	       This compresses the files chap1 and chap2, replacing
	       them with files named chap1.z and chap2.z.  The pack
	       command displays	the percent decrease in	size for each
	       file.

	   2.  To display statistics about the amount of compression
	       done, enter:

	       pack  -	chap1  -  chap2



	       This compresses the files chap1 and chap2 and displays
	       statistics about	chap1, but not about chap2.  The first
	       - (dash)	turns on the statistic display,	and the	second
	       turns it	off.

	   3.  To display compressed files, enter:

	       pcat  chap1.z  chap2 |  more



	       This displays the compressed files chap1.z and chap2.z
	       on the screen in	expanded form, a page at a time
	       (more).	Note that pcat added the .z to the end of
	       chap2, even though it was not entered.

	   4.  To use a	compressed file	without	expanding the copy
	       stored on disk, enter:

	       pcat chap1.z  |	grep  'Greece'



	       This pipes the contents of chap1.z in its expanded form
	       to the grep command.

	   5.  To unpack packed	files, enter:

	       unpack  chap1.z	chap2



	       This expands the	packed files chap1.z and chap2.z,
	       replacing them with files named chap1 and chap2.	 Note
	       that you	can give unpack	filenames either with or
	       without the .z suffix.


     NOTES
	   1.  Both pcat and unpack operate only on files ending in
	       .z.  As a result, when you specify a filename that does
	       not end in .z, pcat and unpack add the suffix and
	       search the directory for	a filename with	that suffix.

	   2.  The unpack command writes a warning to standard output
	       if the file it is unpacking has links.  The new
	       unpacked	file has a different inode than	the packed
	       file from which it was created.	However, any other
	       files linked to the packed file's original inode	still
	       exist and are still packed.

	   3.  If pack is used on files	residing on a System V file
	       system, the filenames must contain no more than 12
	       bytes to	allow space for	the added .z extension.

	   4.  If you try to use pack on a very	small file, you	might
	       receive the following message:

	       pack filename: No saving	-- file	unchanged



     EXIT VALUES
	  The return value of the pack command is the number of	files
	  that it could	not pack.  The exit value of both the pcat and
	  unpack commands is the number	of files it was	unable to
	  unpack.

     RELATED INFORMATION
	  Commands:  cat(1), compress(1)/uncompress(1)/zcat(1).















Acknowledgement and Disclaimer