

GZIP (1)                Public-Domain Utilities                 GZIP (1)




NAME  
        gzip, gunzip, zcat - compress or expand files 

SYNOPSIS  
        pgzipq q[p -acdfhlLnrtvV19 q]pqpq q[p-Sqsuffixp]qpq [ pname ...q ] 
        pgunzipq q[p -acfhlLnrtvV q]pqpq q[p-Sqsuffixp]qpq [ pname ...q ] 
        pzcatq q[p -fhLV q]pqpq [ pname ...q ] 

DESCRIPTION  
        pGzipq reduces the size of the named files using Lempel-Ziv coding 
        (LZ77).   Whenever  possible,  each file is replaced by one with
        the extension p.gz,q  while  keeping  the  same  ownership  modes,
        access and  modification  times.   (The default extension is p-gzq
        for VMS, pzq for MSDOS, OS/2 FAT  and  Atari.)  If  no  files  are
        specified,  the  standard  input  is  compressed to the standard
        output.  pGzipq will only attempt to compress regular files.    In
        particular, it will ignore symbolic links.  

        If  the  new  file  name  is  too long for its file system, pgzipq
        truncates it and keeps the original file name in the  compressed
        file.  pGzipq attempts to truncate only the parts of the file name 
        longer than 3 characters.  (A part is delimited by dots.) If the 
        name  consists  of  small  parts  only,  the  longest  parts are
        truncated.  For  example,  if  file  names  are  limited  to  14
        characters,  gzip.msdos.exe  is  compressed  to  gzi.msd.exe.gz.
        Names are not truncated on systems which do not have a limit  on
        file name length.  

        Compressed  files  can  be restored to their original form using
        pgzipq-d or pgunzipq or pzcat.q If the  original  name  saved  in  the
        compressed  file is not suitable for its file system, a new name
        is constructed from the original one to make it legal.  

        pgunzipq takes a list of files on its command  line  and  replaces
        each  file  whose  name ends with .gz, -gz, .z, -z, _z or .Z and
        which begins with the correct magic number with an  uncompressed
        file without the original extension.  pgunzipq also recognizes the 
        special  extensions  p.tgzq and p.tazq as shorthands for p.tar.gzq and
        p.tar.Zq respectively.   When  compressing,  pgzipq  uses  the  p.tgzq
        extension  if necessary instead of truncating a file with a p.tarq
        extension.  

        pgunzipq can currently decompress files created  by  pgzip,qzip,  or
        ppack.q The  detection  of  the  input  format is automatic.  When
        using the first two formats, pgunzipq checks a  32  bit  CRC.  For
        ppack,qgunzip checks   the  uncompressed  length.    The  standard
        pcompressq format was not designed to  allow  consistency  checks.
        However pgunzipq  is  sometimes  able to detect a bad .Z file.  If
        you get an error when uncompressing a .Z  file,  do  not  assume
        that  the  .Z  file  is  correct  simply  because  the  standard
        puncompressq does not complain.  This  generally  means  that  the
        standard  puncompressq  does  not  check  its  input,  and happily
        generates garbage output.   The  SCO  compress  -H  format  (lzh



Tue Jan 4 23:11:06 1994                                           Page 1




GZIP (1)                Public-Domain Utilities                 GZIP (1)



        compression  method) does not include a CRC but also allows some
        consistency checks.  

        Files created by pzipq can be uncompressed by gzip  only  if  they
        have  a  single  member  compressed with the 'deflation' method.
        This feature is only intended  to  help  conversion  of  tar.zip
        files to  the  tar.gz format.  To extract zip files with several
        members, use punzipq instead of pgunzip.q 

        pzcatq is identical to pgunzipq p-c.q (On some systems,  pzcatq  may  be
        installed  as  pgzcatq to preserve the original link to pcompress.)q
        pzcatq uncompresses either a list of files on the command line  or
        its  standard input and writes the uncompressed data on standard
        output.  pzcatq will uncompress files that have the correct  magic
        number whether they have a p.gzq suffix or not.  

        pGzipq uses  the  Lempel-Ziv algorithm used in pzipq and PKZIP.  The
        amount of compression obtained depends on the size of the  input
        and the distribution of common substrings.  Typically, text such 
        as source  code or English is reduced by 60-70%.  Compression is
        generally much better than that achieved  by  LZW  (as  used  in
        pcompressq),pqpq Huffman coding (as used in ppackq),pqpq or adaptive Huffman 
        coding q(pcompactq).pqpq 

        Compression  is always performed, even if the compressed file is
        slightly larger than the original.  The worst case expansion  is
        a  few  bytes  for  the gzip file header, plus 5 bytes every 32K
        block, or an expansion ratio of 0.015% for large  files.    Note
        that  the  actual  number  of  used  disk  blocks  almost  never
        increases.  pgzipq preserves the mode, ownership and timestamps of 
        files when compressing or decompressing.  

OPTIONS  

        -a --ascii  
                Ascii  text  mode:  convert  end-of-lines  using   local
                conventions.   This  option  is  supported  only on some
                non-Unix systems.  For MSDOS, CR LF is converted  to  LF
                when  compressing,  and  LF  is  converted to CR LF when
                decompressing.  

        -c --stdout --to-stdout  
                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.  

        -d --decompress --uncompress  
                Decompress.  

        -f --force  
                Force  compression or decompression even if the file has
                multiple links or the corresponding file already exists, 



Tue Jan 4 23:11:06 1994                                           Page 2




GZIP (1)                Public-Domain Utilities                 GZIP (1)



                or if the compressed data is read from or written  to  a
                terminal.   If  the  input  data  is  not  in  a  format
                recognized by pgzip,q and if the option --stdout  is  also
                given,  copy  the  input  data  without  change  to  the
                standard ouput: let pzcatq behave as pcat.q  If  p-fq  is  not
                given,  and  when  not  running  in the background, pgzipq
                prompts to verify whether an  existing  file  should  be
                overwritten.  

        -h --help  
                Display a help screen and quit.  

        -l --list  
                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 
    crc: the 32-bit CRC of the uncompressed data 
    date & time: time stamp for the uncompressed file 
                The compression methods currently supported are deflate, 
                compress, lzh (SCO compress -H) and pack.   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.  

        -L --license  
                Display the pgzipq license and quit.  

        -n --no-name  
                When compressing, do not save the original file name  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 pgzipq
                suffix from the compressed file name.  

        -q --quiet  
                Suppress all warnings.  

        -r --recurse  
                Travel the directory structure recursively.  If  any  of
                the  file  names  specified  on  the  command  line  are
                directories,  pgzipq will descend into the  directory  and
                compress  all  the  files  it finds there (or decompress
                them in the case of pgunzipq ).  



Tue Jan 4 23:11:06 1994                                           Page 3




GZIP (1)                Public-Domain Utilities                 GZIP (1)



        -S .suf --suffix .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.  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 ppackq(1)p.qpq 

        -t --test  
                Test. Check the compressed file integrity.  

        -v --verbose  
                Verbose. Display the name and percentage  reduction  for
                each file compressed or decompressed.  

        -V --version  
                Version.  Display  the  version  number  and compilation
                options then quit.  

        -# --fast --best  
                Regulate the speed of compression  using  the  specified
                digit  p#q,pqpq  where  p-1q  or  p--fastq  indicates  the fastest
                compression method (less compression) and p-9q  or  p--bestq
                indicates   the   slowest  compression  method  (optimal
                compression).  The default compression level is p-6qpqpq (that 
                is,  biased  towards  high  compression  at  expense  of
                speed).  

ADVANCED USAGE  
        Multiple compressed  files  can  be concatenated.  In this case,
        pgunzipq will extract all members at once.  For example: 
      gzip -c file1 > foo.gz 
      gzip -c file2 >> foo.gz 
        Then 
      gunzip -c foo 
        is equivalent to 
      cat file1 file2 
        In case of damage to one member of a .gz file, other members can 
        still be recovered (if the damaged member is removed).  However, 
        you can get better compression by  compressing  all  members  at
        once: 
      cat file1 file2 | gzip > foo.gz 
        compresses better than 
      gzip -c file1 file2 > foo.gz 
        If  you  want  to  recompress  concatenated  files to get better
        compression, do: 
      zcat old.gz | gzip > new.gz 
        If  a  compressed  file  consists  of   several   members,   the
        uncompressed  size and CRC reported by the --list option applies
        to the last member only.  





Tue Jan 4 23:11:06 1994                                           Page 4




GZIP (1)                Public-Domain Utilities                 GZIP (1)



ENVIRONMENT  
        The environment variable pGZIPq can hold a set of default  options
        for  pgzip.q  These  options  are  interpreted  first  and  can be
        overwritten by explicit command line parameters.  For example: 
      for sh: GZIP="-8 -v"; export GZIP 
      for csh: setenv GZIP "-8 -v" 
      for MSDOS: set GZIP=-8 -v 
        On Vax/VMS, the name of the environment variable is GZIP_OPT, to 
        avoid a conflict with the  symbol  set  for  invocation  of  the
        program.  

SEE ALSO  
        znew(1),   zcmp(1),   zmore(1),   zforce(1),  gzexe(1),  zip(1),
        unzip(1), compress(1), pack(1), compact(1) 

DIAGNOSTICS  
        Exit status is normally 0; if an error occurs, exit status is 1. 
        If a warning occurs, exit status is 2.  

                Usage: gzip  [-cdfhlLnrtvV19]  [-S  suffix]  [file  ...]
        Invalid options  were  specified on the command line.  pfileq:pqpq not
                in gzip format The file specified to pgunzipq has not been 
        compressed.  pfile:qpqpq Corrupt input.   Use  zcat  to  recover  some
                data.  The  compressed  file has been damaged.  The data
                        up to the point of failure can be recovered using 
        zcat file > recover pfileq:pqpq compressed with   pxxq  bits,  can  only
                handle    pyyq  bits  pFileq was compressed (using LZW) by a
                program that  could  deal  with  more    pbitsq  than  the
                decompress code  on  this  machine.  Recompress the file
                with  gzip,  which  compresses  better  and  uses   less
                memory.   pfileq:pqpq  already has .gz suffix -- no change The
                file is assumed to be already compressed.    Rename  the
        file and  try  again.    pfileq  already  exists;  do  you wish to
                overwrite (y or n)?  Respond "y" if you want the  output
                file to  be replaced; "n" if not.  gunzip: corrupt input
                A SIGSEGV violation was  detected  which  usually  means
                that the   input   file   has  been  corrupted.    pxx.x%q
                Percentage of the input saved by compression.  (Relevant 
                only for p-vqpqpq and p-lq.)pqpq -- not a regular file or directory: ignored 
                When the input file is not a regular file or  directory,
                (e.g. a symbolic link, socket, FIFO, device file), it is 
                left unaltered.    -- has  pxxq other links: unchanged The
                input file has links; it is left unchanged.   See  plnq(1)pqpq
                for more   information.    Use  the  p-fq  flag  to  force
        compression of multiply-linked files.  

CAVEATS  
        When  writing  compressed  data  to  a  tape,  it  is  generally
        necessary  to pad the output with zeroes up to a block boundary.
        When the data is read and the whole block is  passed  to  pgunzipq
        for  decompression,  pgunzipq detects that there is extra trailing
        garbage after  the  compressed  data  and  emits  a  warning  by
        default.   You  have  to  use the --quiet option to suppress the
        warning.  This  option  can  be  set  in  the  pGZIPq  environment



Tue Jan 4 23:11:06 1994                                           Page 5




GZIP (1)                Public-Domain Utilities                 GZIP (1)



        variable as in: 
    for sh: GZIP="-q" tar xfz /dev/rmt/datn 
    for csh: (setenv GZIP "-q"; tar xfz /dev/rmt/datn) 
        In  the  above  example,  gzip  is  invoked implicitly by the -z
        option of GNU tar.  Make sure  that  the  same  block  size  (-b
        option  of  tar) is used for reading and writing compressed data
        on tapes.  

BUGS  
        The --list option reports  incorrect  sizes  if  they  exceed  2
        gigabytes.   The  --list  option  reports sizes as -1 and crc as
        ffffffff if the compressed file is on a non seekable media.  
        This manual page describes the UNIX version of pgzipq .  

COPYRIGHT  
        pGzipq is  not  part  of  the  Hermes  package.    Its   use   and
        distribution are governed by the Gnu Public License.  








































Tue Jan 4 23:11:06 1994                                           Page 6


