1 GZIP(1) General Commands Manual GZIP(1)
4 gzip, gunzip, zcat - compress or expand files
7 1mgzip 22m[ 1m-acdfhklLnNrtvV19 22m] [1m-S suffix22m] [ 4mname24m 4m...24m ]
8 1mgunzip 22m[ 1m-acfhklLnNrtvV 22m] [1m-S suffix22m] [ 4mname24m 4m...24m ]
9 1mzcat 22m[ 1m-fhLV 22m] [ 4mname24m 4m...24m ]
12 4mGzip24m reduces the size of the named files using Lempel-Ziv coding
13 (LZ77). Whenever possible, each file is replaced by one with the
14 extension 1m.gz22m, while keeping the same ownership modes, access and modi-
15 fication times. (The default extension is 1mz 22mfor MSDOS, OS/2 FAT, Win-
16 dows NT FAT and Atari.) If no files are specified, or if a file name
17 is "-", the standard input is compressed to the standard output. 4mGzip0m
18 will only attempt to compress regular files. In particular, it will
19 ignore symbolic links.
21 If the compressed file name is too long for its file system, 4mgzip24m trun-
22 cates it. 4mGzip24m attempts to truncate only the parts of the file name
23 longer than 3 characters. (A part is delimited by dots.) If the name
24 consists of small parts only, the longest parts are truncated. For
25 example, if file names are limited to 14 characters, gzip.msdos.exe is
26 compressed to gzi.msd.exe.gz. Names are not truncated on systems which
27 do not have a limit on file name length.
29 By default, 4mgzip24m keeps the original file name and timestamp in the com-
30 pressed file. These are used when decompressing the file with the 1m-N0m
31 option. This is useful when the compressed file name was truncated or
32 when the timestamp was not preserved after a file transfer.
34 Compressed files can be restored to their original form using 4mgzip24m 4m-d0m
35 or 4mgunzip24m or 4mzcat24m. If the original name saved in the compressed file
36 is not suitable for its file system, a new name is constructed from the
37 original one to make it legal.
39 4mgunzip24m takes a list of files on its command line and replaces each file
40 whose name ends with .gz, -gz, .z, -z, or _z (ignoring case) and which
41 begins with the correct magic number with an uncompressed file without
42 the original extension. 4mgunzip24m also recognizes the special extensions
43 1m.tgz 22mand 1m.taz 22mas shorthands for 1m.tar.gz 22mand 1m.tar.Z 22mrespectively. When
44 compressing, 4mgzip24m uses the 1m.tgz 22mextension if necessary instead of trun-
45 cating a file with a 1m.tar 22mextension.
47 4mgunzip24m can currently decompress files created by 4mgzip24m, 4mzip24m, 4mcompress24m,
48 4mcompress24m 4m-H24m or 4mpack24m. The detection of the input format is automatic.
49 When using the first two formats, 4mgunzip24m checks a 32 bit CRC. For 4mpack0m
50 and 4mgunzip24m checks the uncompressed length. The standard 4mcompress24m format
51 was not designed to allow consistency checks. However 4mgunzip24m is some-
52 times able to detect a bad .Z file. If you get an error when uncom-
53 pressing a .Z file, do not assume that the .Z file is correct simply
54 because the standard 4muncompress24m does not complain. This generally means
55 that the standard 4muncompress24m does not check its input, and happily gen-
56 erates garbage output. The SCO compress -H format (lzh compression
57 method) does not include a CRC but also allows some consistency checks.
59 Files created by 4mzip24m can be uncompressed by gzip only if they have a
60 single member compressed with the 'deflation' method. This feature is
61 only intended to help conversion of tar.zip files to the tar.gz format.
62 To extract a 4mzip24m file with a single member, use a command like 4mgunzip0m
63 4m<foo.zip24m or 4mgunzip24m 4m-S24m 4m.zip24m 4mfoo.zip24m. To extract zip files with several
64 members, use 4munzip24m instead of 4mgunzip24m.
66 4mzcat24m is identical to 4mgunzip24m 1m-c22m. (On some systems, 4mzcat24m may be
67 installed as 4mgzcat24m to preserve the original link to 4mcompress24m.) 4mzcat0m
68 uncompresses either a list of files on the command line or its standard
69 input and writes the uncompressed data on standard output. 4mzcat24m will
70 uncompress files that have the correct magic number whether they have a
71 1m.gz 22msuffix or not.
73 4mGzip24m uses the Lempel-Ziv algorithm used in 4mzip24m and PKZIP. The amount
74 of compression obtained depends on the size of the input and the dis-
75 tribution of common substrings. Typically, text such as source code or
76 English is reduced by 60-70%. Compression is generally much better
77 than that achieved by LZW (as used in 4mcompress24m), Huffman coding (as
78 used in 4mpack24m), or adaptive Huffman coding (4mcompact24m).
80 Compression is always performed, even if the compressed file is
81 slightly larger than the original. The worst case expansion is a few
82 bytes for the gzip file header, plus 5 bytes every 32K block, or an
83 expansion ratio of 0.015% for large files. Note that the actual number
84 of used disk blocks almost never increases. 4mgzip24m preserves the mode,
85 ownership and timestamps of files when compressing or decompressing.
89 Ascii text mode: convert end-of-lines using local conventions.
90 This option is supported only on some non-Unix systems. For
91 MSDOS, CR LF is converted to LF when compressing, and LF is con-
92 verted to CR LF when decompressing.
94 1m-c --stdout --to-stdout0m
95 Write output on standard output; keep original files unchanged.
96 If there are several input files, the output consists of a
97 sequence of independently compressed members. To obtain better
98 compression, concatenate all input files before compressing
101 1m-d --decompress --uncompress0m
105 Force compression or decompression even if the file has multiple
106 links or the corresponding file already exists, or if the com-
107 pressed data is read from or written to a terminal. If the input
108 data is not in a format recognized by 4mgzip24m, and if the option
109 --stdout is also given, copy the input data without change to
110 the standard output: let 4mzcat24m behave as 4mcat24m. If 1m-f 22mis not
111 given, and when not running in the background, 4mgzip24m prompts to
112 verify whether an existing file should be overwritten.
115 Display a help screen and quit.
118 Keep (don't delete) input files during compression or decompres-
122 For each compressed file, list the following fields:
124 compressed size: size of the compressed file
125 uncompressed size: size of the uncompressed file
126 ratio: compression ratio (0.0% if unknown)
127 uncompressed_name: name of the uncompressed file
129 The uncompressed size is given as -1 for files not in gzip for-
130 mat, such as compressed .Z files. To get the uncompressed size
131 for such a file, you can use:
135 In combination with the --verbose option, the following fields
138 method: compression method
139 crc: the 32-bit CRC of the uncompressed data
140 date & time: timestamp for the uncompressed file
142 The compression methods currently supported are deflate, com-
143 press, lzh (SCO compress -H) and pack. The crc is given as
144 ffffffff for a file not in gzip format.
146 With --name, the uncompressed name, date and time are those
147 stored within the compress file if present.
149 With --verbose, the size totals and compression ratio for all
150 files is also displayed, unless some sizes are unknown. With
151 --quiet, the title and totals lines are not displayed.
154 Display the 4mgzip24m license and quit.
157 When compressing, do not save the original file name and time-
158 stamp by default. (The original name is always saved if the name
159 had to be truncated.) When decompressing, do not restore the
160 original file name if present (remove only the 4mgzip24m suffix from
161 the compressed file name) and do not restore the original time-
162 stamp if present (copy it from the compressed file). This option
163 is the default when decompressing.
166 When compressing, always save the original file name and time-
167 stamp; this is the default. When decompressing, restore the
168 original file name and timestamp if present. This option is use-
169 ful on systems which have a limit on file name length or when
170 the timestamp has been lost after a file transfer.
173 Suppress all warnings.
176 Travel the directory structure recursively. If any of the file
177 names specified on the command line are directories, 4mgzip24m will
178 descend into the directory and compress all the files it finds
179 there (or decompress them in the case of 4mgunzip24m ).
181 1m-S .suf --suffix .suf0m
182 When compressing, use suffix .suf instead of .gz. Any non-empty
183 suffix can be given, but suffixes other than .z and .gz should
184 be avoided to avoid confusion when files are transferred to
187 When decompressing, add .suf to the beginning of the list of
188 suffixes to try, when deriving an output file name from an input
192 Use synchronous output. With this option, 4mgzip24m is less likely
193 to lose data during a system crash, but it can be considerably
197 Test. Check the compressed file integrity.
200 Verbose. Display the name and percentage reduction for each file
201 compressed or decompressed.
204 Version. Display the version number and compilation options then
208 Regulate the speed of compression using the specified digit 4m#24m,
209 where 1m-1 22mor 1m--fast 22mindicates the fastest compression method
210 (less compression) and 1m-9 22mor 1m--best 22mindicates the slowest com-
211 pression method (best compression). The default compression
212 level is 1m-6 22m(that is, biased towards high compression at expense
216 When you synchronize a compressed file between two computers,
217 this option allows rsync to transfer only files that were
218 changed in the archive instead of the entire archive. Normally,
219 after a change is made to any file in the archive, the compres-
220 sion algorithm can generate a new version of the archive that
221 does not match the previous version of the archive. In this
222 case, rsync transfers the entire new version of the archive to
223 the remote computer. With this option, rsync can transfer only
224 the changed files as well as a small amount of metadata that is
225 required to update the archive structure in the area that was
229 Multiple compressed files can be concatenated. In this case, 4mgunzip0m
230 will extract all members at once. For example:
232 gzip -c file1 > foo.gz
233 gzip -c file2 >> foo.gz
243 In case of damage to one member of a .gz file, other members can still
244 be recovered (if the damaged member is removed). However, you can get
245 better compression by compressing all members at once:
247 cat file1 file2 | gzip > foo.gz
249 compresses better than
251 gzip -c file1 file2 > foo.gz
253 If you want to recompress concatenated files to get better compression,
256 gzip -cd old.gz | gzip > new.gz
258 If a compressed file consists of several members, the uncompressed size
259 and CRC reported by the --list option applies to the last member only.
260 If you need the uncompressed size for all members, you can use:
262 gzip -cd file.gz | wc -c
264 If you wish to create a single archive file with multiple members so
265 that members can later be extracted independently, use an archiver such
266 as tar or zip. GNU tar supports the -z option to invoke gzip transpar-
267 ently. gzip is designed as a complement to tar, not as a replacement.
270 The obsolescent environment variable 1mGZIP 22mcan hold a set of default
271 options for 4mgzip24m. These options are interpreted first and can be over-
272 written by explicit command line parameters. As this can cause prob-
273 lems when using scripts, this feature is supported only for options
274 that are reasonably likely to not cause too much harm, and 4mgzip24m warns
275 if it is used. This feature will be removed in a future release of
278 You can use an alias or script instead. For example, if 4mgzip24m is in the
279 directory 1m/usr/bin 22myou can prepend 1m$HOME/bin 22mto your 1mPATH 22mand create an
280 executable script 1m$HOME/bin/gzip 22mcontaining the following:
287 znew(1), zcmp(1), zmore(1), zforce(1), gzexe(1), zip(1), unzip(1), com-
290 The 4mgzip24m file format is specified in P. Deutsch, GZIP file format spec-
291 ification version 4.3, 1m<https://www.ietf.org/rfc/rfc1952.txt>22m, Internet
292 RFC 1952 (May 1996). The 4mzip24m deflation format is specified in P.
293 Deutsch, DEFLATE Compressed Data Format Specification version 1.3,
294 1m<https://www.ietf.org/rfc/rfc1951.txt>22m, Internet RFC 1951 (May 1996).
297 Exit status is normally 0; if an error occurs, exit status is 1. If a
298 warning occurs, exit status is 2.
300 Usage: gzip [-cdfhklLnNrtvV19] [-S suffix] [file ...]
301 Invalid options were specified on the command line.
303 4mfile24m: not in gzip format
304 The file specified to 4mgunzip24m has not been compressed.
306 4mfile24m: Corrupt input. Use zcat to recover some data.
307 The compressed file has been damaged. The data up to the point
308 of failure can be recovered using
310 zcat 4mfile24m > recover
312 4mfile24m: compressed with 4mxx24m bits, can only handle 4myy24m bits
313 4mFile24m was compressed (using LZW) by a program that could deal
314 with more 4mbits24m than the decompress code on this machine. Recom-
315 press the file with gzip, which compresses better and uses less
318 4mfile24m: already has .gz suffix -- unchanged
319 The file is assumed to be already compressed. Rename the file
322 4mfile24m already exists; do you wish to overwrite (y or n)?
323 Respond "y" if you want the output file to be replaced; "n" if
326 gunzip: corrupt input
327 A SIGSEGV violation was detected which usually means that the
328 input file has been corrupted.
330 4mxx.x%24m Percentage of the input saved by compression.
331 (Relevant only for 1m-v 22mand 1m-l22m.)
333 -- not a regular file or directory: ignored
334 When the input file is not a regular file or directory, (e.g. a
335 symbolic link, socket, FIFO, device file), it is left unaltered.
337 -- has 4mxx24m other links: unchanged
338 The input file has links; it is left unchanged. See 4mln24m(1) for
339 more information. Use the 1m-f 22mflag to force compression of multi-
343 When writing compressed data to a tape, it is generally necessary to
344 pad the output with zeroes up to a block boundary. When the data is
345 read and the whole block is passed to 4mgunzip24m for decompression, 4mgunzip0m
346 detects that there is extra trailing garbage after the compressed data
347 and emits a warning by default. You can use the --quiet option to sup-
351 The gzip format represents the input size modulo 2^32, so the --list
352 option reports incorrect uncompressed sizes and compression ratios for
353 uncompressed files 4 GB and larger. To work around this problem, you
354 can use the following command to discover a large uncompressed file's
359 The --list option reports sizes as -1 and crc as ffffffff if the com-
360 pressed file is on a non seekable media.
362 In some rare cases, the --best option gives worse compression than the
363 default compression level (-6). On some highly redundant files, 4mcom-0m
364 4mpress24m compresses better than 4mgzip24m.
367 Copyright (C) 1998-1999, 2001-2002, 2012, 2015-2018 Free Software Foun-
369 Copyright (C) 1992, 1993 Jean-loup Gailly
371 Permission is granted to make and distribute verbatim copies of this
372 manual provided the copyright notice and this permission notice are
373 preserved on all copies.
375 Permission is granted to copy and distribute modified versions of this
376 manual under the conditions for verbatim copying, provided that the
377 entire resulting derived work is distributed under the terms of a per-
378 mission notice identical to this one.
380 Permission is granted to copy and distribute translations of this man-
381 ual into another language, under the above conditions for modified ver-
382 sions, except that this permission notice may be stated in a transla-
383 tion approved by the Foundation.