GZIP(1) General Commands Manual GZIP(1)
gzip – compression/decompression tool using Lempel-Ziv coding (LZ77)
gzip [-cdfhkLlNnqrtVv] [-S suffix] file [file [...]]
gunzip [-cfhkLNqrtVv] [-S suffix] file [file [...]]
zcat [-fhV] file [file [...]]
The gzip program compresses and decompresses files using Lempel-Ziv coding
(LZ77). If no files are specified, gzip will compress from standard input,
or decompress to standard output. When in compression mode, each file will
be replaced with another file with the suffix, set by the -S suffix option,
added, if possible.
In decompression mode, each file will be checked for existence, as will the
file with the suffix added. Each file argument must contain a separate
complete archive; when multiple files are indicated, each is decompressed
In the case of gzcat the resulting data is then concatenated in the manner
If invoked as gunzip then the -d option is enabled. If invoked as zcat or
gzcat then both the -c and -d options are enabled.
This version of gzip is also capable of decompressing files compressed
using compress(1), bzip2(1), or xz(1).
The following options are available:
-2, -3, -4, -5, -6, -7, -8
-9, --best These options change the compression level used, with the
-1 option being the fastest, with less compression, and
the -9 option being the slowest, with optimal
compression. The default compression level is 6.
-c, --stdout, --to-stdout
This option specifies that output will go to the standard
output stream, leaving files intact.
-d, --decompress, --uncompress
This option selects decompression rather than
-f, --force This option turns on force mode. This allows files with
multiple links, symbolic links to regular files,
overwriting of pre-existing files, reading from or
writing to a terminal, and when combined with the -c
option, allowing non-compressed data to pass through
-h, --help This option prints a usage summary and exits.
-k, --keep Keep (do not delete) input files during compression or
-L, --license This option prints gzip license.
-l, --list This option displays information about the file's
compressed and uncompressed size, ratio, uncompressed
name. With the -v option, it also displays the
compression method, CRC, date and time embedded in the
-N, --name This option causes the stored filename in the input file
to be used as the output file.
-n, --no-name This option stops the filename and timestamp from being
stored in the output file.
-q, --quiet With this option, no warnings or errors are printed.
-r, --recursive This option is used to gzip the files in a directory tree
individually, using the fts(3) library.
-S suffix, --suffix suffix
This option changes the default suffix from .gz to
-t, --test This option will test compressed files for integrity.
-V, --version This option prints the version of the gzip program.
-v, --verbose This option turns on verbose mode, which prints the
compression ratio for each file compressed.
If the environment variable GZIP is set, it is parsed as a white-space
separated list of options handled before any options on the command line.
Options on the command line will override anything in GZIP.
The gzip utility exits 0 on success, 1 on errors, and 2 if a warning
bzip2(1), compress(1), xz(1), fts(3), zlib(3)
The gzip program was originally written by Jean-loup Gailly, licensed under
the GNU Public Licence. Matthew R. Green wrote a simple front end for
NetBSD 1.3 distribution media, based on the freely re-distributable zlib
library. It was enhanced to be mostly feature-compatible with the original
GNU gzip program for NetBSD 2.0.
This implementation of gzip was ported based on the NetBSD gzip, and first
appeared in FreeBSD 7.0.
This implementation of gzip was written by Matthew R. Green
<firstname.lastname@example.org> with unpack support written by Xin LI
According to RFC 1952, the recorded file size is stored in a 32-bit
integer, therefore, it cannot represent files larger than 4GB. This
limitation also applies to -l option of gzip utility.
macOS 12.1 October 26, 2015 macOS 12.1