File:  [MW Coherent from dump] / coherent / b / bin / unzip / zipinfo.doc
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed May 29 04:56:36 2019 UTC (7 years, 2 months ago) by root
Branches: MarkWilliams, MAIN
CVS tags: relic, HEAD
coherent


ZIPINFO(1)               USER COMMANDS                 ZIPINFO(1)

NAME
     zipinfo - list detailed information about a ZIP archive file

SYNOPSIS
     zipinfo [-1smlvht] file[.zip] [filespec ...]

ARGUMENTS
     file[.zip]  Path of the ZIP archive.  The suffix ``.zip'' is
                 applied  if  the  file specified does not exist.
                 Note that self-extracting  ZIP  files  are  sup-
                 ported;  just  specify the ``.exe'' suffix your-
                 self.

     [filespec]  An optional list of archive members to  be  pro-
                 cessed.  Expressions may be used to match multi-
                 ple members; be sure to quote  expressions  that
                 contain   characters  interpreted  by  the  Unix
                 shell. See PATTERN  MATCHING  (below)  for  more
                 details.

OPTIONS
     -1  list filenames only, one per line (useful for pipes)
     -s  list zipfile  info  in  short  Unix  ``ls  -l''  format:
         default
     -m  list zipfile info in medium Unix ``ls -l'' format
     -l  list zipfile info in long Unix ``ls -l'' format
     -v  list zipfile information in verbose, multi-page format
     -h  list header line
     -t  list totals for files listed or for all files

PATTERN MATCHING
     All archive members are listed unless a filespec is provided
     to specify a subset of the archive members.  The filespec is
     similar to an egrep expression, and may contain:

     *      matches a sequence of 0 or more characters
     ?      matches exactly 1 character
     \nnn   matches the character having octal code nnn
     [...]  matches any single character found inside the  brack-
            ets; ranges are specified by a beginning character, a
            hyphen, and an ending character.  If  an  exclamation
            point  or  a  carat  (`!'  or  `^')  follows the left
            bracket, then the range of characters matched is com-
            plemented  with  respect  to  the ASCII character set
            (that is, anything except the characters  inside  the
            brackets is considered a match).

DESCRIPTION
     ZipInfo lists technical information  about  a  ZIP  archive,
     including  information  file  access permissions, encryption
     status, type of compression, version and operating system of
     compressing program, and the like.  The default option is to

Info-ZIP          Last change: 19 Aug 92 (v1.0)                 1

ZIPINFO(1)               USER COMMANDS                 ZIPINFO(1)

     list files in the following format:

-rw-rwl---  1.5 unx    2802 t- defX 11-Aug-91 13:48 perms.2660

     The last three fields are clearly the modification date  and
     time of the file, and its name.  The case of the filename is
     respected; thus files  which  come  from  MS-DOS  PKZIP  are
     always  capitalized.   If  the file was zipped with a stored
     directory name, that  is  also  displayed  as  part  of  the
     filename.

     The second and third  fields  indicate  that  the  file  was
     zipped  under Unix with version 1.5 of Zip (a beta version).
     Since it comes from Unix, the file permissions at the begin-
     ning   of   the  line  are  printed  in  Unix  format.   The
     uncompressed file-size (2802 in this example) is the  fourth
     field.

     The fifth field consists of two characters, either of  which
     may  take  on  several  values.   The first character may be
     either `t' or `b', indicating that Zip believes the file  to
     be  text  or  binary,  respectively;  but  if  the  file  is
     encrypted, ZipInfo notes this fact by capitalizing the char-
     acter  (`T'  or `B').  The second character may also take on
     four values, depending on whether there is an extended local
     header  and/or  an  ``extra field'' associated with the file
     (explained in PKWare's APPNOTE.TXT).  If neither exists, the
     character  will  be  a hyphen (`-'); if there is an extended
     local header but no extra field, `l'; if the  reverse,  `x';
     and  if  both  exist, `X'.  Thus the file in this example is
     (apparently) a text file, is not encrypted, and has  neither
     an  extra field nor an extended local header associated with
     it.  The example below, on the other hand, is  an  encrypted
     binary file with an extra field:

RWD,R,R     0.9 vms     168 Bx shrk  9-Aug-91 19:15 perms.0644

     Extra fields are used by PKWare for  authenticity  verifica-
     tion(?)  and  possibly other purposes, and by Info-ZIP's Zip
     1.6 and later to store OS/2, Macintosh and VMS  file  attri-
     butes.  This example presumably falls into the latter class,
     then.  Note that the file attributes are listed in VMS  for-
     mat.   Other  possibilities  for  the  host operating system
     include OS/2 with High Performance File System  (HPFS),  DOS
     or  OS/2  with  File Allocation Table (FAT) file system, and
     Macintosh, denoted as follows:

arc,,rw,    1.0 os2    5358 Tl i4:3  4-Dec-91 11:33 longfilename.hpfs
arc,hid,rdo,sys dos    4096 b- i4:2 14-Jul-91 12:58 EA DATA. SF
--w-------  1.0 mac   17357 bx i8:2  4-May-92 04:02 unzip.macr

Info-ZIP          Last change: 19 Aug 92 (v1.0)                 2

ZIPINFO(1)               USER COMMANDS                 ZIPINFO(1)

     File attributes in the first two cases are  indicated  in  a
     DOS-like  format,  where  the  file  may or may not have its
     archive bit set; may be hidden or not; may be read-write  or
     read-only;  and  may be a system file or not.  If the attri-
     butes are too long,  the  version  number  of  the  encoding
     software is omitted.  (The information is still available in
     the verbose listing, however.)  Interpretation of  Macintosh
     file attributes needs some work yet.

     Finally, the sixth field indicates  the  compression  method
     and  possible  sub-method used.  There are six methods known
     at present:  storing (no compression), reducing,  shrinking,
     imploding,  tokenizing,  and  deflating.  In addition, there
     are four levels of reducing (1 through  4);  four  types  of
     imploding  (4K or 8K sliding dictionary, and 2 or 3 Shannon-
     Fano trees); and three levels of  deflating  (fast,  normal,
     maximum  compression).  ZipInfo represents these methods and
     their sub-methods as follows:  ``stor''; ``re:1,'' ``re:2,''
     etc.;  ``shrk'';  ``i4:2,''  ``i8:3,''  etc.;  ``tokn''; and
     ``defF,'' ``defN,'' and ``defX.''

     The medium and long listings are  almost  identical  to  the
     short  format except that they add information on the file's
     compression.   The  medium  format  indicates   the   file's
     compression factor as a percentage:

-rw-rwl---  1.5 unx    2802 t- 81% defX 11-Aug-91 13:48 perms.2660

     In this example, the file has been compressed by more than a
     factor of five; the compressed data are only 19% of the ori-
     ginal size.  The long format  gives  the  compressed  file's
     size in bytes, instead:

-rw-rwl---  1.5 unx    2802 t-     538 defX 11-Aug-91 13:48 perms.2660

     In addition to individual file information, a  default  zip-
     file listing also includes header and trailer lines:

Archive:  OS2.zip   5453 bytes   5 files
,,rw,       1.0 os2     730 b- i4:3 26-Jun-92 23:40 Contents
,,rw,       1.0 os2    3710 b- i4:3 26-Jun-92 23:33 makefile.os2
,,rw,       1.0 os2    8753 b- i8:3 26-Jun-92 15:29 os2unzip.c
,,rw,       1.0 os2      98 b- stor 21-Aug-91 15:34 unzip.def
,,rw,       1.0 os2      95 b- stor 21-Aug-91 17:51 zipinfo.def
5 files, 13386 bytes uncompressed, 4951 bytes compressed:  63%

     The header line gives the name of  the  archive,  its  total
     size,  and  the total number of files; the trailer gives the
     number of files listed, their total uncompressed  size,  and
     their  total  compressed  size  (not  including any of Zip's
     internal overhead).  If, however, one or more filespecs  are
     provided, the header and trailer lines are not listed.  This

Info-ZIP          Last change: 19 Aug 92 (v1.0)                 3

ZIPINFO(1)               USER COMMANDS                 ZIPINFO(1)

     behavior is also similar to that of Unix's ``ls -l''; it may
     be  overridden  by  specifying  the -h and -t options expli-
     citly.  In such a case  the  listing  format  must  also  be
     specified  explicitly,  since  -h  or  -t  (or  both) in the
     absence of other options implies that  ONLY  the  header  or
     trailer  line (or both) is listed.  See the EXAMPLES section
     below for a semi-intelligible translation of this nonsense.

     The verbose listing is self-explanatory.  It also lists file
     comments  and the zipfile comment, if any, and the number of
     bytes of OS/2 extended attributes  stored.   Note  that  the
     latter  number will in general NOT match the number given by
     OS/2's ``dir'' command; OS/2 always reports  the  number  of
     bytes  required  in  16-bit  format,  whereas ZipInfo always
     reports the 32-bit storage.

ENVIRONMENT OPTIONS
     Modifying ZipInfo's default behavior via options  placed  in
     an environment variable can be a bit complicated to explain,
     due to ZipInfo's attempts to handle various defaults  in  an
     intuitive,  yet  Unix-like,  manner.  Nevertheless, there is
     some underlying logic.  In brief, there are three ``priority
     levels''  of  options:   the  default  options;  environment
     options, which can override or  add  to  the  defaults;  and
     explicit  options  given  by the user, which can override or
     add to either of the above.

     The default listing  format,  as  noted  above,  corresponds
     roughly  to  the "zipinfo -hst" command (except when indivi-
     dual zipfile members are specified).  A user who prefers the
     long-listing  format  (-l)  can  make  use  of  the  ZIPINFO
     environment variable to change this default:

           setenv ZIPINFO -l            Unix C shell

           ZIPINFO=-l; export ZIPINFO   Unix Bourne shell

           set ZIPINFO=-l               OS/2 or MS-DOS

           define ZIPINFO_OPTS "-l"     VMS (quotes for LOWERCASE)

     If,  in  addition,  the  user  dislikes  the  trailer  line,
     ZipInfo's concept of ``negative options''  may  be  used  to
     override  the default inclusion of the line.  This is accom-
     plished by preceding the undesired option with one  or  more
     minuses:   e.g., ``-l-t'' or ``--tl'', in this example.  The
     first hyphen is the regular switch character,  but  the  one
     before the `t' is a minus sign.  The dual use of hyphens may
     seem  a  little  awkward,  but  it's  reasonably   intuitive
     nonetheless:   simply  ignore  the  first hyphen and go from
     there.  It is also consistent with the behavior of the  Unix
     command nice(1).

Info-ZIP          Last change: 19 Aug 92 (v1.0)                 4

ZIPINFO(1)               USER COMMANDS                 ZIPINFO(1)

EXAMPLES
     To get a basic, short-format listing of  the  complete  con-
     tents of a ZIP archive ``storage.zip,'' with both header and
     totals lines, use only the archive name as  an  argument  to
     zipinfo:

           zipinfo storage

     To produce  a  basic,  long-format  listing  (not  verbose),
     including header and totals lines, use -l:

           zipinfo -l storage

     To list the complete contents of the archive without  header
     and  totals  lines,  either  negate the -h and -t options or
     else specify the contents explicitly:

           zipinfo --h-t storage

           zipinfo storage \*

     (where the backslash is required only  if  the  shell  would
     otherwise  expand the `*' wildcard, as in Unix when globbing
     is turned on--double quotes around the asterisk  would  have
     worked  as  well).   To turn off the totals line by default,
     use the environment variable (C shell is assumed here):

           setenv ZIPINFO --t

           zipinfo storage

     To get the full, short-format listing of the  first  example
     again,  given that the environment variable is set as in the
     previous example, it is necessary to specify the  -s  option
     explicitly,  since the -t option by itself implies that ONLY
     the footer line is to be printed:

           setenv ZIPINFO --t

           zipinfo -t storage           [only totals line]

           zipinfo -st storage          [full listing]

     The -s option, like -m and -l, includes headers and  footers
     by  default, unless otherwise specified.  Since the environ-
     ment variable specified no footers and  that  has  a  higher
     precedence  than  the default behavior of -s, an explicit -t
     option was necessary to produce the full  listing.   Nothing
     was  indicated  about  the header, however, so the -s option
     was sufficient.  Note that both the -h and -t options,  when
     used  by themselves or with each other, override any default
     listing of member files; only the header and/or  footer  are

Info-ZIP          Last change: 19 Aug 92 (v1.0)                 5

ZIPINFO(1)               USER COMMANDS                 ZIPINFO(1)

     printed.   This  behavior  will  be more useful when ZipInfo
     accepts wildcards for the zipfile name; one may then summar-
     ize the contents of all zipfiles with a single command.

     To list information on a single file within the archive,  in
     medium format, specify the filename explicitly:

           zipinfo -m storage unshrink.c

     The specification of any member file, as  in  this  example,
     will  override the default header and totals lines; only the
     single line of information about the requested file will  be
     printed.   This  is  intuitively  what one would expect when
     requesting information about a single  file.   For  multiple
     files,  it  is often useful to know the total compressed and
     uncompressed size; in such cases -t may be specified  expli-
     citly:

           zipinfo -mt storage "*.[ch] Mak\*

     Finally, to get maximal information about the  ZIP  archive,
     use the verbose option.  It is usually wise to pipe the out-
     put into a filter such as more(1):

           zipinfo -v storage | more

TIPS
     The author finds it convenient to set up an alias ``ii'' for
     ZipInfo  on systems which allow aliases, or else to set up a
     batch  file  ``ii.bat''  or  to  rename  the  executable  to
     ``ii.exe'' on systems such as MS-DOS which have no provision
     for aliases.  The ``ii'' usage parallels the  common  ``ll''
     alias  for long listings in Unix, and the similarity between
     the outputs of the two commands was intentional.

SEE ALSO
     funzip(1),  unzip(1),   zip(1),   zipcloak(1),   zipnote(1),
     zipsplit(1)

AUTHOR
     Greg Roelofs (also known as Cave Newt).  ZipInfo  is  partly
     based  on  S. H. Smith's unzip and contains pattern-matching
     code by  J.  Kercheval,  but  mostly  it  was  written  from
     scratch.  The OS/2 extra-field code is by Kai Uwe Rommel.

Info-ZIP          Last change: 19 Aug 92 (v1.0)                 6


unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.