Invoking gzip (GNU Gzip)
3 Invoking gzip
The format for running the
gzip program is:
gzip option …
gzip supports the following options:
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.
Force compression or decompression even if the file has multiple links or the corresponding file already exists, or if the compressed data is read from or written to a terminal. If the input data is not in a format recognized by
gzip, and if the option
--stdoutis also given, copy the input data without change to the standard output: let
-fis not given, and when not running in the background,
gzipprompts to verify whether an existing file should be overwritten.
Print an informative help message describing the options then quit.
Keep (don’t delete) input files during compression or decompression.
For each compressed file, list the following fields:
compressed size: size of the compressed file uncompressed size: size of the uncompressed file ratio: compression ratio (0.0% if unknown) uncompressed_name: name of the uncompressed file
The uncompressed size is given as -1 for files not in
gzipformat, such as compressed ‘
.Z’ files. To get the uncompressed size for such a file, you can use:
zcat file.Z | wc -c
In combination with the
--verboseoption, the following fields are also displayed:
method: compression method (deflate,compress,lzh,pack) crc: the 32-bit CRC of the uncompressed data date & time: timestamp for the uncompressed file
The CRC is given as ffffffff for a file not in gzip format.
--verbose, the size totals and compression ratio for all files is also displayed, unless some sizes are unknown. With
--quiet, the title and totals lines are not displayed.
gzipformat represents the input size modulo 2^32, so the uncompressed size and compression ratio are listed incorrectly for uncompressed files 4 GiB and larger. To work around this problem, you can use the following command to discover a large uncompressed file’s true size:
zcat file.gz | wc -c
gziplicense then quit.
When compressing, do not save the original file name and timestamp by default. (The original name is always saved if the name had to be truncated.) When decompressing, do not restore the original file name if present (remove only the
gzipsuffix from the compressed file name) and do not restore the original timestamp if present (copy it from the compressed file). This option is the default when decompressing.
When compressing, always save the original file name, and save the original timestamp if the original is a regular file; this is the default. When decompressing, restore the original file name and timestamp if present. This option is useful on systems which have a limit on file name length or when the timestamp has been lost after a file transfer.
Suppress all warning messages.
Travel the directory structure recursively. If any of the file names specified on the command line are directories,
gzipwill descend into the directory and compress all the files it finds there (or decompress them in the case of
Cater better to the
rsyncprogram by periodically resetting the internal structure of the compressed data stream. This lets the
rsyncprogram take advantage of similarities in the uncompressed input when synchronizing two files compressed with this flag. The cost: the compressed output is usually about one percent larger.
sufinstead of ‘
.gz’. Any suffix can be given, but suffixes other than ‘
.z’ and ‘
.gz’ should be avoided to avoid confusion when files are transferred to other systems. A null suffix forces gunzip to try decompression on all given files regardless of suffix, as in:
gunzip -S "" * (*.* for MSDOS)
Previous versions of gzip used the ‘
.z’ suffix. This was changed to avoid a conflict with
Use synchronous output, by transferring output data to the output file’s storage device when the file system supports this. Because file system data can be cached, without this option if the system crashes around the time a command like ‘
gzip FOO’ is run the user might lose both
FOO.gz; this is the default with
gzip, just as it is the default with most applications that move data. When this option is used,
gzipis safer but can be considerably slower.
Test. Check the compressed file integrity.
Verbose. Display the name and percentage reduction for each file compressed.
Version. Display the version number and compilation options, then quit.
Regulate the speed of compression using the specified digit
--fastindicates the fastest compression method (less compression) and
-9indicates the slowest compression method (optimal compression). The default compression level is
-6(that is, biased towards high compression at expense of speed).