X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=doc%2Fgzip.texi;h=1d8d100fa81547eb0c3a60a5931ea1e0960db429;hb=5b0528ef03b0abe11feb1ac5d768c50859243782;hp=c7f8d62ad94c338c02e09b95468663c169f17c59;hpb=013796abf4c6be0bd130f541c0ece156156239c3;p=debian%2Fgzip diff --git a/doc/gzip.texi b/doc/gzip.texi index c7f8d62..1d8d100 100644 --- a/doc/gzip.texi +++ b/doc/gzip.texi @@ -1,24 +1,25 @@ \input texinfo @c -*-texinfo-*- @c %**start of header @setfilename gzip.info +@documentencoding UTF-8 @include version.texi -@settitle Gzip User's Manual +@settitle GNU Gzip @finalout @setchapternewpage odd @c %**end of header @copying -This manual is for Gzip +This manual is for GNU Gzip (version @value{VERSION}, @value{UPDATED}), and documents commands for compressing and decompressing data. -Copyright @copyright{} 1998, 1999, 2001, 2002, 2006, 2007 Free -Software Foundation, Inc. +Copyright @copyright{} 1998-1999, 2001-2002, 2006-2007, 2009-2016 Free Software +Foundation, Inc. Copyright @copyright{} 1992, 1993 Jean-loup Gailly @quotation Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.2 or +under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU @@ -26,24 +27,26 @@ Free Documentation License''. @end quotation @end copying -@c Debian install-info (up through at least version 1.9.20) uses only the -@c first dircategory. But install-info 1.10.28 rejects any attempt to -@c put the more-useful individual utility first. So put the less-useful -@c general category first. -@dircategory Utilities +@dircategory Compression @direntry -* Gzip: (gzip). The gzip command for compressing files. +* Gzip: (gzip). General (de)compression of files (lzw). @end direntry @dircategory Individual utilities @direntry -* gzip: (gzip)Invoking gzip. Compress files. +* gunzip: (gzip)Overview. Decompression. +* gzexe: (gzip)Overview. Compress executables. +* zcat: (gzip)Overview. Decompression to stdout. +* zdiff: (gzip)Overview. Compare compressed files. +* zforce: (gzip)Overview. Force .gz extension on files. +* zgrep: (gzip)Overview. Search compressed files. +* zmore: (gzip)Overview. Decompression output by pages. @end direntry @titlepage -@title gzip +@title GNU gzip @subtitle The data compression program -@subtitle for Gzip Version @value{VERSION} +@subtitle for Gzip version @value{VERSION} @subtitle @value{UPDATED} @author by Jean-loup Gailly @@ -56,7 +59,7 @@ Free Documentation License''. @ifnottex @node Top -@top Compressing Files +@top GNU Gzip: General file (de)compression @insertcopying @end ifnottex @@ -69,21 +72,21 @@ Free Documentation License''. * Environment:: The @env{GZIP} environment variable * Tapes:: Using @command{gzip} on tapes. * Problems:: Reporting bugs. -* Copying This Manual:: How to make copies of this manual. -* Concept Index:: Index of concepts. +* GNU Free Documentation License:: Copying and sharing this manual. +* Concept index:: Index of concepts. @end menu @node Overview @chapter Overview @cindex overview -@command{gzip} reduces the size of the named files using Lempel-Ziv coding +@command{gzip} reduces the size of the named files using Lempel--Ziv coding (LZ77). Whenever possible, each file is replaced by one with the extension @samp{.gz}, while keeping the same ownership modes, access and -modification times. (The default extension is @option{-gz} for @abbr{VMS}, +modification times. (The default extension is @samp{-gz} for @abbr{VMS}, @samp{z} for @abbr{MSDOS}, @abbr{OS/2} @abbr{FAT} and Atari.) If no files are specified or -if a file name is "-", the standard input is compressed to the standard +if a file name is @file{-}, the standard input is compressed to the standard output. @command{gzip} will only attempt to compress regular files. In particular, it will ignore symbolic links. @@ -113,8 +116,9 @@ compressed file is not suitable for its file system, a new name is constructed from the original one to make it legal. @command{gunzip} takes a list of files on its command line and replaces -each file whose name ends with @samp{.gz}, @samp{.z}, @samp{.Z}, -@option{-gz}, @option{-z} or @samp{_z} and which begins with the correct +each file whose name ends with @samp{.gz}, @samp{.z} +@samp{-gz}, @samp{-z}, or @samp{_z} (ignoring case) +and which begins with the correct magic number with an uncompressed file without the original extension. @command{gunzip} also recognizes the special extensions @samp{.tgz} and @samp{.taz} as shorthands for @samp{.tar.gz} and @samp{.tar.Z} @@ -137,7 +141,7 @@ its input, and happily generates garbage output. The @abbr{SCO} @samp{compress also allows some consistency checks. Files created by @command{zip} can be uncompressed by @command{gzip} only if -they have a single member compressed with the 'deflation' method. This +they have a single member compressed with the ``deflation'' method. This feature is only intended to help conversion of @file{tar.zip} files to the @file{tar.gz} format. To extract a @command{zip} file with a single member, use a command like @samp{gunzip '\\1'/ " | sh -e @@ -273,6 +280,10 @@ whether an existing file should be overwritten. @itemx -h Print an informative help message describing the options then quit. +@item --keep +@itemx -k +Keep (don't delete) input files during compression or decompression. + @item --list @itemx -l For each compressed file, list the following fields: @@ -350,6 +361,13 @@ specified on the command line are directories, @command{gzip} will descend into the directory and compress all the files it finds there (or decompress them in the case of @command{gunzip}). +@item --rsyncable +Cater better to the @command{rsync} program by periodically resetting +the internal structure of the compressed data stream. This lets the +@code{rsync} 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. + @item --suffix @var{suf} @itemx -S @var{suf} Use suffix @var{suf} instead of @samp{.gz}. Any suffix can be @@ -365,6 +383,16 @@ gunzip -S "" * (*.* for MSDOS) Previous versions of gzip used the @samp{.z} suffix. This was changed to avoid a conflict with @command{pack}. +@item --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 @samp{gzip FOO} is run the user +might lose both @file{FOO} and @file{FOO.gz}; this is the default with +@command{gzip}, just as it is the default with most applications that +move data. When this option is used, @command{gzip} is safer but can +be considerably slower. + @item --test @itemx -t Test. Check the compressed file integrity. @@ -460,18 +488,28 @@ complement to @command{tar}, not as a replacement. @chapter Environment @cindex Environment -The environment variable @env{GZIP} can hold a set of default options for -@command{gzip}. These options are interpreted first and can be overwritten by -explicit command line parameters. For example: +The obsolescent environment variable @env{GZIP} can hold a set of +default options for @command{gzip}. These options are interpreted +first and can be overwritten by explicit command line parameters. As +this can cause problems when using scripts, this feature is supported +only for options that are reasonably likely to not cause too much +harm, and @command{gzip} warns if it is used. This feature will be +removed in a future release of @command{gzip}. + +You can use an alias or script instead. For example, if +@command{gzip} is in the directory @samp{/usr/bin} you can prepend +@file{$HOME/bin} to your @env{PATH} and create an executable script +@file{$HOME/bin/gzip} containing the following: @example -for sh: GZIP="-8v --name"; export GZIP -for csh: setenv GZIP "-8v --name" -for MSDOS: set GZIP=-8v --name +#! /bin/sh +export PATH=/usr/bin +exec gzip -9 "$@@" @end example -On @abbr{VMS}, the name of the environment variable is @env{GZIP_OPT}, to -avoid a conflict with the symbol set for invocation of the program. +On @abbr{VMS}, the name of the obsolescent environment variable is +@env{GZIP_OPT}, to avoid a conflict with the symbol set for invocation +of the program. @node Tapes @chapter Using @command{gzip} on tapes @@ -482,21 +520,8 @@ the output with zeroes up to a block boundary. When the data is read and the whole block is passed to @command{gunzip} for decompression, @command{gunzip} detects that there is extra trailing garbage after the compressed data and emits a warning by default if the garbage contains -nonzero bytes. You have to use the -@option{--quiet} option to suppress the warning. This option can be set in the -@env{GZIP} environment variable, as in: - -@example -for sh: GZIP="-q" tar -xfz --block-compress /dev/rst0 -for csh: (setenv GZIP "-q"; tar -xfz --block-compress /dev/rst0) -@end example - -In the above example, @command{gzip} is invoked implicitly by the @option{-z} -option of @acronym{GNU} @command{tar}. Make sure that the same block -size (@option{-b} -option of @command{tar}) is used for reading and writing compressed data on -tapes. (This example assumes you are using the @acronym{GNU} version of -@command{tar}.) +nonzero bytes. You can use the @option{--quiet} option to suppress +the warning. @node Problems @chapter Reporting Bugs @@ -511,17 +536,13 @@ a description of the bug behavior, and the input to @command{gzip} that triggered the bug.@refill -@node Copying This Manual -@appendix Copying This Manual - -@menu -* GNU Free Documentation License:: License for copying this manual. -@end menu +@node GNU Free Documentation License +@appendix GNU Free Documentation License @include fdl.texi -@node Concept Index -@appendix Concept Index +@node Concept index +@appendix Concept index @printindex cp