User Commands pack(1)
NAME
pack, pcat, unpack - compress and expand files
SYNOPSIS
pack [-f/] [-] file...
pcat file...unpack [-/] file...
DESCRIPTION
pack The pack command attempts to store the specified files in a compressed form. Wherever possible (and useful), each input file file is replaced by a packed file file.z with the same access modes, access and modified dates, and owner as those of file. If pack is successful, file is removed. 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 smallerthan three blocks, unless the character frequency distribu-
tion is very skewed, which can occur with printer plots or pictures.Typically, text files are reduced to 60-75% of their origi-
nal size. Load modules, which use a larger character set and have a more uniform distribution of characters, show littlecompression, the packed versions being about 90% of the ori-
ginal size. The pack utility returns a value that is the number of files that it failed to compress. If that number exceeds 255, 255 is returned. No packing occurs if: o the file appears to be already packed o the file name is too long to add the .z suffix o the file has links o the file is a directorySunOS 5.11 Last change: 13 Mar 2008 1
User Commands pack(1) o the file cannot be opened o the file is empty o no disk storage blocks are saved by packing o a file called file.z already exists o the .z file cannot be createdo an I/O error occurred during processing. The last segment of the file name must be short enough to allow space for the appended .zextension. Directories cannot be compressed. pcat The pcat command 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.pcat returns the number of files it was unable to unpack.
Failure can occur if: o the file cannot be opened; o the file does not appear to be the output of pack.unpack
The unpack command expands files created by pack. For each
file specified in the command, a search is made for a file called file.z (or just file, if file 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 can occur for the same reasons
that it can in pcat, as well as for the following:o a file with the unpacked name already exists;
o the unpacked file cannot be created.
OPTIONS The following options are supported by pack:SunOS 5.11 Last change: 13 Mar 2008 2
User Commands pack(1)-f Forces packing of file. This is useful for causing an
entire directory to be packed even if some of the files do not benefit. Packed files can be restored totheir original form using unpack or pcat.
The following options are supported by pack and unpack:
-/ When packing or unpacking, copies any ACL and extended
system attributes associated with the source file tothe target file. If an ACL or extended system attri-
butes cannot be copied, the original file is retained, a diagnostic message is written to stderr, and thefinal exit status is non-zero.
OPERANDS The following operands are supported:file A path name of a file to be packed, unpacked, or
pcated; file can include or omit the .z suffix.- 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 thecode for the byte to be printed on the standard out-
put. Additional occurrences of - in place of file
causes the internal flag to be set and reset.USAGE
See largefile(5) for the description of the behavior ofpack, pcat, and unpack when encountering files greater than
or equal to 2 Gbyte ( 2^31 bytes).EXAMPLES
Example 1 Viewing a Packed File To view a packed file named file.z use:example% pcat file.z
or just:SunOS 5.11 Last change: 13 Mar 2008 3
User Commands pack(1)example% pcat file
Example 2 Making and Unpacked Copy:To make an unpacked copy, say nnn, of a packed file named
file.z (without destroying file.z) use the command:example% pcat file >nnn
ENVIRONMENT VARIABLES See environ(5) for descriptions of the following environment variables that affect the execution of pack, pcat, andunpack: LC_CTYPE, LC_MESSAGES, and NLSPATH.
EXIT STATUS The following exit values are returned: 0 Successful completion. >0 An error occurred. The number of files the commandfailed to pack/unpack is returned. If the number of
failures exceeds 255, then 255 is returned.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWesu ||_____________________________|_____________________________|
| CSI | Enabled ||_____________________________|_____________________________|
SEE ALSO
cat(1), compress(1), zcat(1), fgetattr(3C), fsetattr(3C)attributes(5), environ(5), largefile(5)SunOS 5.11 Last change: 13 Mar 2008 4