GZIP(1) GZIP(1)
NAME
gzip, gunzip, zcat - compress or expand files
SYNOPSIS
gzip [ -cdfhLrtvV19 ] [ name ... ]
gunzip [ -cfhLrtvV ] [ name ... ]
zcat [ -hLV ] [ name ... ]
DESCRIPTION
Gzip reduces the size of the named files using Lempel-Ziv
coding (LZ77). Whenever possible, each file is replaced
by one with the extension .z, while keeping the same own-
ership modes, access and modification times. If no files
are specified, the standard input is compressed to the
standard output. If the new file name is too long, gzip
truncates it and keeps the original file name in the com-
pressed file. Gzip will only attempt to compress regular
files. In particular, it will ignore symbolic links.
Compressed files can be restored to their original form
using gzip -d or gunzip or zcat.
gunzip takes a list of files on its command line and
replaces each file whose name ends with .z or .Z and which
begins with the correct magic number with an uncompressed
file without the original extension.
gunzip can currently decompress files created by gzip,
zip, compress or pack. The detection of the input format
is automatic. When using the first two formats, gunzip
checks a 32 bit CRC. For pack, gunzip checks the uncom-
pressed length. The compress format was not designed to
allow consistency checks. However gunzip is sometimes able
to detect a bad .Z file. If you get an error when uncom-
pressing a .Z file, do not assume that the .Z file is cor-
rect simply because the standard uncompress does not com-
plain. This generally means that the standard uncompress
does not check its input, and happily generates garbage
output.
Files created by zip can be uncompressed by gzip only if
they have a single member compressed with the 'deflation'
method. This feature is only intended to help conversion
of tar.zip files to the tar.z format. To extract zip files
with several members, use unzip instead of gunzip.
zcat is identical to gunzip -c. zcat uncompresses either
a list of files on the command line or its standard input
and writes the uncompressed data on standard output. zcat
will uncompress files that have the correct magic number
whether they have a .z suffix or not.
Gzip uses the Lempel-Ziv algorithm used in zip and PKZIP.
The amount of compression obtained depends on the size of
local 1
GZIP(1) GZIP(1)
the input and the distribution of common substrings. Typ-
ically, text such as source code or English is reduced by
60-70%. Compression is generally much better than that
achieved by LZW (as used in compress), Huffman coding (as
used in pack), or adaptive Huffman coding (compact).
Compression is always performed, even if the compressed
file is slightly larger than the original. The worst case
expansion is a few bytes for the gzip file header, plus 5
bytes every 32K block, or an expansion ratio of 0.015% for
large files. gzip preserves the mode, ownership and
timestamps of files when compressing or decompressing.
OPTIONS
-c --stdout
Write output on standard output; keep original
files unchanged. If there are several input files,
the output consists of a sequence of independently
compressed members. To obtain better compression,
concatenate all input files before compressing
them.
-d --decompress
Decompress.
-f --force
Force compression even if the file has multiple
links or the corresponding .z file already exists.
If -f is not given, and when not running in the
background, gzip prompts to verify whether an
existing .z file should be overwritten.
-h --help
Display a help screen.
-L --license
Display the gzip license.
-r --recurse
Travel the directory structure recursively. If any
of the file names specified on the command line are
directories, gzip will descend into the directory
and compress all the files it finds there (or
decompress them in the case of gunzip ).
-t --test
Test. Check the compressed file integrity.
-v --verbose
Verbose. Display the name and percentage reduction
for each file compressed.
local 2
GZIP(1) GZIP(1)
-V --version
Version. Display the version number and compilation
options.
-# --fast --best
Regulate the speed of compression using the speci-
fied digit #, where -1 or --fast indicates the
fastest compression method (less compression) and
-9 or --best indicates the slowest compression
method (optimal compression). The default compres-
sion level is -5.
ADVANCED USAGE
Multiple compressed files can be concatenated. In this
case, gunzip will extract all members at once. For exam-
ple:
gzip -c file1 > foo.z
gzip -c file2 >> foo.z Then
gunzip -c foo
is equivalent to
cat file1 file2
In case of damage to one member of a .z file, other mem-
bers can still be recovered (if the damaged member is
removed). However, you can get better compression by com-
pressing all members at once:
cat file1 file2 | gzip > foo.z
compresses better than
gzip -c file1 file2 > foo.z
If you want to recompress concatenated files to get better
compression, do:
zcat old.z | gzip > new.z
ENVIRONMENT
The environment variable GZIP can hold a set of default
options for gzip. These options are interpreted first and
can be ovewritten by explicit command line parameters. For
example:
for sh: GZIP="-8 -v"; export GZIP
for csh: setenv GZIP "-8 -v"
SEE ALSO
znew(1), zcmp(1), zmore(1), zip(1), compress(1), pack(1),
compact(1)
local 3
GZIP(1) GZIP(1)
DIAGNOSTICS
Exit status is normally 0; if an error occurs, exit status
is 1. If a warning occurs, exit status is 2.
Usage: gzip [-cdfhLrtvV19] [file ...]
Invalid options were specified on the command
line.
file: not in gzip format
The file specified to gunzip has not been com-
pressed.
file: Corrupt input. Use zcat to recover some data.
The compressed file has been damaged. The data up
to the point of failure can be recovered using
zcat file > recover
file: compressed with xx bits, can only handle yy bits
File was compressed (using LZW) by a program that
could deal with more bits than the decompress code
on this machine. Recompress the file with gzip,
which compresses better and uses less memory.
file: already has .z suffix -- no change
The file is assumed to be already compressed.
Rename the file and try again.
file already exists; do you wish to overwrite (y or n)?
Respond "y" if you want the output file to be
replaced; "n" if not.
gunzip: corrupt input
A SIGSEGV violation was detected which usually
means that the input file has been corrupted.
xx.x%
Percentage of the input saved by compression.
(Relevant only for -v.)
-- not a regular file or directory: ignored
When the input file is not a regular file or
directory, (e.g. a symbolic link, socket, FIFO,
device file), it is left unaltered.
-- has xx other links: unchanged
The input file has links; it is left unchanged.
See ln(1) for more information. Use the -f flag to
force compression of multiply-linked files.
CAVEATS
The .z extension is already used by pack(1). You can link
gzip to pcat to get transparent decompression for programs
expecting .z files to be in pack format.
local 4