uncompress - expand compressed data
[XSI] uncompress [-cfv][file...]
The uncompress utility shall restore files to their original state after they have been compressed using the compress utility. If no files are specified, the standard input shall be uncompressed to the standard output. If the invoking process has appropriate privileges, the ownership, modes, access time, and modification time of the original file shall be preserved.
This utility shall support the uncompressing of any files produced by the compress utility on the same implementation. For files produced by compress on other systems, uncompress supports 9 to 14-bit compression (see compress , -b); it is implementation-defined whether values of -b greater than 14 are supported.
The uncompress utility shall conform to the Base Definitions volume of IEEE Std 1003.1-2001, Section 12.2, Utility Syntax Guidelines.
The following options shall be supported:
- Write to standard output; no files are changed.
- Do not prompt for overwriting files. Except when run in the background, if -f is not given the user shall be prompted as to whether an existing file should be overwritten. If the standard input is not a terminal and -f is not given, uncompress shall write a diagnostic message to standard error and exit with a status greater than zero.
- Write messages to standard error concerning the expansion of each file.
The following operand shall be supported:
- A pathname of a file. If file already has the .Z suffix specified, it shall be used as the input file and the output file shall be named file with the .Z suffix removed. Otherwise, file shall be used as the name of the output file and file with the .Z suffix appended shall be used as the input file.
The standard input shall be used only if no file operands are specified, or if a file operand is '-' .
Input files shall be in the format produced by the compress utility.
The following environment variables shall affect the execution of uncompress:
- Provide a default value for the internationalization variables that are unset or null. (See the Base Definitions volume of IEEE Std 1003.1-2001, Section 8.2, Internationalization Variables for the precedence of internationalization variables used to determine the values of locale categories.)
- If set to a non-empty string value, override the values of all the other internationalization variables.
- Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multi-byte characters in arguments).
- Determine the locale that should be used to affect the format and contents of diagnostic messages written to standard error.
- Determine the location of message catalogs for the processing of LC_MESSAGES .
When there are no file operands or the -c option is specified, the uncompressed output is written to standard output.
Prompts shall be written to the standard error output under the conditions specified in the DESCRIPTION and OPTIONS sections. The prompts shall contain the file pathname, but their format is otherwise unspecified. Otherwise, the standard error output shall be used only for diagnostic messages.
Output files are the same as the respective input files to compress.
The following exit values shall be returned:
- Successful completion.
- An error occurred.
The input file remains unmodified.
The limit of 14 on the compress -b bits argument is to achieve portability to all systems (within the restrictions imposed by the lack of an explicit published file format). Some implementations based on 16-bit architectures cannot support 15 or 16-bit uncompression.
First released in Issue 4.
The normative text is reworded to avoid use of the term "must" for application requirements.