Invoking gzip (GNU Gzip)
Next: Advanced usage, Previous: Sample output, Up: GNU Gzip: General file (de)compression [Contents][Index]
3 Invoking gzip
The format for running the gzip
program is:
gzip option …
gzip
supports the following options:
--stdout
--to-stdout
-c
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.
--decompress
--uncompress
-d
Decompress.
--force
-f
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--stdout
is also given, copy the input data without change to the standard output: letzcat
behave ascat
. If-f
is not given, and when not running in the background,gzip
prompts to verify whether an existing file should be overwritten.--help
-h
Print an informative help message describing the options then quit.
--keep
-k
Keep (don’t delete) input files during compression or decompression.
--list
-l
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
gzip
format, 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
--verbose
option, 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.
With
--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.The
gzip
format 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
--license
-L
Display the
gzip
license then quit.--no-name
-n
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
gzip
suffix 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.--name
-N
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.
--quiet
-q
Suppress all warning messages.
--recursive
-r
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 ofgunzip
).--rsyncable
Cater better to the
rsync
program by periodically resetting the internal structure of the compressed data stream. This lets thersync
program 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.--suffix suf
-S suf
Use suffix
suf
instead 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 withpack
.--synchronous
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 bothFOO
andFOO.gz
; this is the default withgzip
, just as it is the default with most applications that move data. When this option is used,gzip
is safer but can be considerably slower.--test
-t
Test. Check the compressed file integrity.
--verbose
-v
Verbose. Display the name and percentage reduction for each file compressed.
--version
-V
Version. Display the version number and compilation options, then quit.
--fast
--best
-n
Regulate the speed of compression using the specified digit
n
, where-1
or--fast
indicates the fastest compression method (less compression) and--best
or-9
indicates the slowest compression method (optimal compression). The default compression level is-6
(that is, biased towards high compression at expense of speed).
Next: Advanced usage, Previous: Sample output, Up: GNU Gzip: General file (de)compression [Contents][Index]