1 UNZIP_CLI
   UnZip is used to extract files compressed and packaged by Zip  (see
   HELP ZIP for information on ZIP).

   For a brief help on Zip and Unzip, run each without specifying  any
   parameters  on the command line (or apply the /HELP qualifier).  To
   get a brief help sceen  about  the  alternate  UNIX  style  command
   interface, run each with the -h option applied.

   UNZIP will list, test, or extract from a ZIP archive.  ZIP archives
   are commonly found on MS-DOS systems; a VMS version of ZIP can also
   be found here.

   Archive member extraction is implied by the absence of the  /SCREEN
   (-c),  /PIPE  (-p),  /TEST  (-t),  /LIST  (-l, -v) or /COMMENT (-z)
   qualifiers (options).  All archive members are processed  unless  a
   filespec is provided to specify a subset of the archive members.

     UNZIP zipfile [file[,...]] [/qualifiers]

2 Parameters
 zipfile

      File  specification  for  the  ZIP  archive(s)   with   optional
      wildcards.   UnZip  will  perform  actions  specified  for every
      zipfile  matching   the   specification.    The   default   file
      specification is SYS$DISK:[].ZIP.

      Note that self-extracting ZIP files are supported; just  specify
      the .EXE suffix yourself.

 file

      An optional  comma-separated  list  of  archive  members  to  be
      processed;  if  no  list  is  given,  all  archive  members  are
      processed.  Expressions may be used to match  multiple  members.
      Expressions  should  be  enclosed  in  double-quotes  to prevent
      interpretation by DCL.  Multiple filenames should  be  separated
      by  blanks.   Each file specification is similar to a Unix egrep
      expression and may contain:

          *       matches a sequence of 0 or more characters
          ?       matches exactly 1 character
          [...]   matches any single character found inside the brackets;
                  ranges are specified by a beginning character,
                  a hyphen, and an ending character.  If a '!' or '^'
                  immediately follows the left bracket, then any character
                  not in the given range is matched.

2 Qualifiers

/ZIPINFO

   /ZIPINFO

   Displays information about the Zip archive and the files  contained
   therein.   This  function used to be provided by a separate ZipInfo
   program.

   The following qualifiers may be specified with /ZIPINFO:

         /SHORT                 Short UNIX "ls -l" format (default)
         /MEDIUM                Medium UNIX "ls -l" format
         /LONG                  Long UNIX "ls -l" format
         /VERBOSE               Verbose, multi-page format
         /ONE_LINE              Filenames only, one per line
         /HEADER                Print header lines
         /TOTALS                Print totals for files
         /TIMES                 Print file times in sortable decimal format
         /[NO]CASE_INSENSITIVE  Match filenames case-insensitively
         /[NO]PAGE              Page screen output through built-in "more"

/BINARY

   /BINARY[=KEYWORD] /NOBINARY (default)

   Selects conversion to VMS "standard" binary file format,  which  is
   "fixed  length  512  byte  records,  no  record  attributes".   The
   optional keywords recognized are:
         AUTO     Automatically extracts files marked as "binary" (rather
                  than "text") in standard VMS binary file format. (default)
         ALL      Extracts all files in standard VMS binary file format.
         NONE     Same as /NOBINARY.

   Note that a  combination  of  /BINARY[=AUTO]  and  /TEXT[=AUTO]  is
   allowed.  (see /TEXT qualifier)

/BRIEF

   /BRIEF (default)

   When used with  /LIST,  specifies  that  a  brief  listing  of  the
   archive's  contents  is to be displayed.  A brief listing shows the
   length, date, time, and file name for the files in the archive.

/CASE_INSENSITIVE

   /CASE_INSENSITIVE /NOCASE_INSENSITIVE (default)

   Match filenames case-insensitively.   (Good  default  option  under
   VMS.)

/COMMENT

   /COMMENT /NOCOMMENT

   Display the archive comment.

/DIRECTORY

   /DIRECTORY=directory-spec

   Specifies the output directory where all the extracted files are to
   be placed.

/EXCLUDE

   /EXCLUDE=(file[,...])

   A comma-separated list of files to exclude when  extracting  files.
   If  multiple  files  are  specified, the list should be included in
   parentheses.

/FRESHEN

   /FRESHEN /NOFRESHEN

   Freshen existing files; replace if newer.  Does not cause  any  new
   files to be created.

/FULL

   /FULL

   When used  with  /LIST,  specifies  that  a  full  listing  of  the
   archive's  contents  is  to be displayed.  A full listing shows the
   length, compression method,  compressed  size,  compression  ratio,
   date, time, CRC value, and file name for the files in the archive.

/HELP

   /HELP

   Displays a one-page brief help screen and exits quietly.

/JUNK

   /JUNK /NOJUNK (default)

   Junk the stored paths  (don't  recreated  the  archive's  directory
   structure.

/LIST

   /LIST

   List the contents of the archive.  /BRIEF and /FULL can be used  to
   specify  the  amount  of  information  displayed.   The  default is
   /BRIEF.

/LOWERCASE

   /LOWERCASE /NOLOWERCASE (default)

   Convert  filenames  from   all-uppercase   operating   systems   to
   lowercase.  This option has no effect under VMS.

/OVERWRITE

   /OVERWRITE /NOOVERWRITE

   The qualifier /OVERWRITE forces overwriting of existing files  when
   extracting.  The negation /NOOVERWRITE results in never overwriting
   an existing file.  The default action  is  to  prompt  for  desired
   action when about to overwrite an existing file.

   For VMS, "overwriting" results in the creation of a new version  of
   the  file,  unless  version  numbers  are stored in the archive and
   /VERSION is specified.

/PAGE

   /PAGE /NOPAGE

   Feed all screen output through the built-in "more" pager.

/PASSWORD

   /PASSWORD=decryption-password

   Specifies a decryption password and prevents UnZip  from  prompting
   for a password in case the specified decryption key was wrong.  The
   supplied string must  be  enclosed  in  double-quotes  whenever  it
   contains lowercase or special characters.

/PIPE

   /PIPE

   Extract files to SYS$OUTPUT with no informational messages.

/QUIET

   /QUIET[=SUPER]

   Perform operations quietly.  The keyword SUPER can be specified  to
   make operations even more quiet.

/RESTORE

   /RESTORE /NORESTORE

   Restore file owner and protection settings.

/SCREEN

   /SCREEN /NOSCREEN

   Extracts matching files to SYS$OUTPUT (the terminal).

/TEST

   /TEST /NOTEST

   Test archive files.

/TEXT

   /TEXT[=KEYWORD] /NOTEXT (default)

   Selects conversion to VMS standard text file format.  The  optional
   keywords recognized are:
         AUTO     Automatically extracts files marked as "text" (rather
                  than "binary") in standard VMS text file format. (default)
         ALL      Extracts all files in standard VMS text file format.
         NONE     Same as /NOTEXT.

   A  similar  functionality  is  available  for  binary  files,   see
   qualifier /BINARY.

/UPDATE

   /UPDATE /NOUPDATE

   Update existing files; create new ones if needed.

/VERSION

   /VERSION /NOVERSION (default)

   Retain VMS file version numbers.
2 Authors
   Info-ZIP;  currently  maintained  by  Greg  Roelofs.   VMS  support
   maintained  by  Igor  Mandrichenko,  Christian  Spieler  and Hunter
   Goatley.  Originally based on a program by Samuel H.  Smith.

   VMS on-line help ported from UNZIP.TXT by Hunter Goatley.
2 Exit_Codes
   On VMS, UnZip's UNIX style exit values are mapped into  proper  VMS
   status codes:
          1                               (success)  normal exit,
          (0x7fff0000 + 16*UnZip_errnum)  -W- warnings
          (0x7fff0002 + 16*UnZip_errnum)  -E- normal errors
          (0x7fff0004 + 16*UnZip_errnum)  -F- fatal errors

   The UnZip error level (or exit code) approximates  the  exit  codes
   defined by PKWARE and takes on the following values:
         VMS       UnZip    Type of error
         severity  errcode
           -         0      normal; no errors or warnings detected.

           W         1      one or more warning errors were encountered,
                            but processing completed  successfully  any-
                            way.   This  includes  zipfiles where one or
                            more files was skipped  due  to  unsupported
                            compression  method  or  encryption  with an
                            unknown password.

           E         2      a generic error in the  zipfile  format  was
                            detected.   Processing  may  have  completed
                            successfully anyway;  some  broken  zipfiles
                            created by other archivers have simple work-
                            arounds.

           F         3      a severe error in  the  zipfile  format  was
                            detected.   Processing probably failed imme-
                            diately.

           F         4      unzip was unable to allocate memory for  one
                            or  more  buffers during program initializa-
                            tion.

           F         5      unzip  was  unable  to  allocate  memory  or
                            unable  to  obtain a tty to read the decryp-
                            tion password(s).

           F         6      unzip was unable to allocate  memory  during
                            decompression to disk.

           F         7      unzip  was  unable to allocate memory during
                            in-memory decompression.

           F         8      [currently not used]

           E         9      the specified zipfiles were not found.

           E         10     invalid options were specified on  the  com-
                            mand line.

           E         11     no matching files were found.

           F         50     the disk is (or was) full during extraction.

           F         51     the end of the ZIP archive  was  encountered
                            prematurely.

           E         80     the user aborted unzip prematurely with con-
                            trol-C (or similar)

           E         81     no files were found due to unsupported  com-
                            pression  methods or unsupported decryption.
                            (If even one additional file is successfully
                            processed, however, the exit status is 1.)

           E         82     no  files  were  found due to bad decryption
                            password(s).  This is also the  exit  status
                            if  no files were found due to a combination
                            of unsupported  compression  and  bad  pass-
                            words.   As in the previous case, however, a
                            single successful file  will  result  in  an
                            exit status of 1 instead.)

   In addition, there is a compilation  option  to  expand  upon  this
   behavior:   An  executable  compiled  with  the option RETURN_CODES
   defined displays a human-readable explanation  of  what  the  error
   status means.
2 UNIX_Options
   The default action of UnZip is to extract all zipfile entries.  The
   following options and modifiers can be provided:

         -Z   ZipInfo mode
         -c   extract files to SYS$OUTPUT (terminal)
         -f   freshen existing files (replace if newer); create none
         -h   show brief help screen and exit quietly
         -l   list archive files (short format)
         -p   extract files to SYS$OUTPUT; no informational messages
         -t   test archive files
         -u   update existing files; create new ones if needed
         -v   list archive files (verbose format)
         -z   display only the archive comment

       MODIFIERS
         -a   auto-extract only text files in standard VMS text file format
         -aa  extract all files as text
         -b   auto-extract only binary files in VMS fixed 512 bytes records
         -bb  extract all files as binary VMS fixed 512 byte record files
         -j   junk paths (don't recreate archive's directory structure)
         -n   never overwrite existing files; don't prompt
         -o   OK to overwrite files without prompting
         -q   perform operations quietly (-qq => even quieter)
         -C   match filenames case-insensitively
         -L   convert filenames to lowercase if created on MSDOS, VMS, etc.
         -P<pwd>  supply decryption password on the command line (insecure!)
         -M   page output through built-in "more" function
         -V   retain (VMS) file version numbers
         -X   restore owner/protection info (may require privileges)

   Note that uppercase options such as -C, -L, -M, -P, -V, -X  and  -Z
   must be specified in quotes.  For example:

         $ unzip "-VX" -a zipfile
2 UNZIP_OPTS_Default
   UnZip allows to modify its default behaviour  by  specifying  (UNIX
   style)  option  defaults  via  the  UNZIP_OPTS  logical  name.  For
   example, the following will cause UnZip to match filenames  without
   regard  to  case,  restore owner/protection information and perform
   all operations at quiet-level 1 by default:

         $ define UNZIP_OPTS "-qCX"

   Note that  the  quotation  marks  here  are  required  to  preserve
   lowercase  options  (opposite  of  the  command-line behavior).  To
   negate a default option on the command line, add one or more  minus
   signs  before  the option letter, in addition to the leading switch
   character `-':

         $ unzip --ql zipfile

   or

         $ unzip -l-q zipfile

   At present  it  is  not  possible  to  decrement  an  option  below
   zero--that is, more than a few minuses have no effect.

   UNZIP_OPTS may be defined as a symbol rather than a logical, but if
   both are defined, the logical is used.
