]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/gzip/gzip.1
Merge commit '850ef5ae11d69ea3381bd310f564f025fc8caea3'
[FreeBSD/FreeBSD.git] / usr.bin / gzip / gzip.1
1 .\"     $NetBSD: gzip.1,v 1.31 2018/10/26 22:10:15 christos Exp $
2 .\"
3 .\" Copyright (c) 1997, 2003, 2004, 2008, 2009, 2015, 2017 Matthew R. Green
4 .\" All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\"
15 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
20 .\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21 .\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
22 .\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
23 .\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 .\" SUCH DAMAGE.
26 .Dd November 2, 2022
27 .Dt GZIP 1
28 .Os
29 .Sh NAME
30 .Nm gzip ,
31 .Nm gunzip ,
32 .Nm zcat
33 .Nd compression/decompression tool using Lempel-Ziv coding (LZ77)
34 .Sh SYNOPSIS
35 .Nm
36 .Op Fl cdfhkLlNnqrtVv
37 .Op Fl S Ar suffix
38 .Ar file
39 .Oo
40 .Ar file Oo ...
41 .Oc
42 .Oc
43 .Nm gunzip
44 .Op Fl cfhkLNqrtVv
45 .Op Fl S Ar suffix
46 .Ar file
47 .Oo
48 .Ar file Oo ...
49 .Oc
50 .Oc
51 .Nm zcat
52 .Op Fl fhV
53 .Ar file
54 .Oo
55 .Ar file Oo ...
56 .Oc
57 .Oc
58 .Sh DESCRIPTION
59 The
60 .Nm
61 program compresses and decompresses files using Lempel-Ziv coding
62 (LZ77).
63 If no
64 .Ar files
65 are specified,
66 .Nm
67 will compress from standard input, or decompress to standard output.
68 When in compression mode, each
69 .Ar file
70 will be replaced with another file with the suffix, set by the
71 .Fl S Ar suffix
72 option, added, if possible.
73 .Pp
74 In decompression mode, each
75 .Ar file
76 will be checked for existence, as will the file with the suffix
77 added.
78 Each
79 .Ar file
80 argument must contain a separate complete archive;
81 when multiple
82 .Ar files
83 are indicated, each is decompressed in turn.
84 .Pp
85 In the case of
86 .Nm gzcat
87 the resulting data is then concatenated in the manner of
88 .Xr cat 1 .
89 .Pp
90 If invoked as
91 .Nm gunzip
92 then the
93 .Fl d
94 option is enabled.
95 If invoked as
96 .Nm zcat
97 or
98 .Nm gzcat
99 then both the
100 .Fl c
101 and
102 .Fl d
103 options are enabled.
104 .Pp
105 This version of
106 .Nm
107 is also capable of decompressing files compressed using
108 .Xr compress 1 ,
109 .Xr bzip2 1 ,
110 .Ar lzip ,
111 .Xr zstd 1 ,
112 or
113 .Xr xz 1 .
114 .Sh OPTIONS
115 The following options are available:
116 .Bl -tag -width XXrXXXrecursiveX
117 .It Fl 1 , Fl Fl fast
118 .It Fl 2 , 3 , 4 , 5 , 6 , 7 , 8
119 .It Fl 9 , Fl Fl best
120 These options change the compression level used, with the
121 .Fl 1
122 option being the fastest, with less compression, and the
123 .Fl 9
124 option being the slowest, with optimal compression.
125 The default compression level is 6.
126 .It Fl c , Fl Fl stdout , Fl Fl to-stdout
127 This option specifies that output will go to the standard output
128 stream, leaving files intact.
129 .It Fl d , Fl Fl decompress , Fl Fl uncompress
130 This option selects decompression rather than compression.
131 .It Fl f , Fl Fl force
132 This option turns on force mode.
133 This allows files with multiple links, symbolic links to regular files,
134 overwriting of pre-existing files, reading from or writing to a terminal,
135 and when combined with the
136 .Fl c
137 option, allowing non-compressed data to pass through unchanged.
138 .It Fl h , Fl Fl help
139 This option prints a usage summary and exits.
140 .It Fl k , Fl Fl keep
141 This option prevents
142 .Nm
143 from deleting input files after (de)compression.
144 .It Fl L , -license
145 This option prints
146 .Nm
147 license.
148 .It Fl l , Fl Fl list
149 This option displays information about the file's compressed and
150 uncompressed size, ratio, uncompressed name.
151 With the
152 .Fl v
153 option, it also displays the compression method, CRC, date and time
154 embedded in the file.
155 .It Fl N , Fl Fl name
156 This option causes the stored filename in the input file to be used
157 as the output file.
158 .It Fl n , Fl Fl no-name
159 This option stops the filename and timestamp from being stored in
160 the output file.
161 .It Fl q , Fl Fl quiet
162 With this option, no warnings or errors are printed.
163 .It Fl r , Fl Fl recursive
164 This option is used to
165 .Nm
166 the files in a directory tree individually, using the
167 .Xr fts 3
168 library.
169 .It Fl S Ar suffix , Fl Fl suffix Ar suffix
170 This option changes the default suffix from .gz to
171 .Ar suffix .
172 .It Fl t , Fl Fl test
173 This option will test compressed files for integrity.
174 .It Fl V , Fl Fl version
175 This option prints the version of the
176 .Nm
177 program.
178 .It Fl v , Fl Fl verbose
179 This option turns on verbose mode, which prints the compression
180 ratio for each file compressed.
181 .El
182 .Sh ENVIRONMENT
183 If the environment variable
184 .Ev GZIP
185 is set, it is parsed as a white-space separated list of options
186 handled before any options on the command line.
187 Options on the command line will override anything in
188 .Ev GZIP .
189 .Sh EXIT STATUS
190 The
191 .Nm
192 utility exits 0 on success,
193 1 on errors,
194 and 2 if a warning occurs.
195 .Sh SIGNALS
196 .Nm
197 responds to the following signals:
198 .Bl -tag -width indent
199 .It Dv SIGINFO
200 Report progress to standard error.
201 .El
202 .Sh SEE ALSO
203 .Xr bzip2 1 ,
204 .Xr compress 1 ,
205 .Xr zstd 1 ,
206 .Xr xz 1 ,
207 .Xr fts 3 ,
208 .Xr zlib 3
209 .Sh HISTORY
210 The
211 .Nm
212 program was originally written by Jean-loup Gailly, licensed under
213 the GNU Public Licence.
214 Matthew R. Green wrote a simple front end for
215 .Nx 1.3
216 distribution media, based on the freely re-distributable zlib library.
217 It was enhanced to be mostly feature-compatible with the original
218 GNU
219 .Nm
220 program for
221 .Nx 2.0 .
222 .Pp
223 This implementation of
224 .Nm
225 was ported based on the
226 .Nx
227 .Nm
228 version 20181111,
229 and first appeared in
230 .Fx 7.0 .
231 .Sh AUTHORS
232 .An -nosplit
233 This implementation of
234 .Nm
235 was written by
236 .An Matthew R. Green Aq Mt mrg@eterna.com.au
237 with unpack support written by
238 .An Xin LI Aq Mt delphij@FreeBSD.org .
239 .Sh BUGS
240 According to RFC 1952, the recorded file size is stored in a 32-bit
241 integer, therefore, it cannot represent files larger than 4GB.
242 This limitation also applies to
243 .Fl l
244 option of
245 .Nm
246 utility.