Archive-Unzip-Burst
view release on metacpan or search on metacpan
unzip-6.0/zipinfo.txt view on Meta::CPAN
The option -UU allows to entirely disable the recognition of
UTF-8 encoded filenames. The handling of filename codings
within unzip falls back to the behaviour of previous versions.
-z include the archive comment (if any) in the listing.
DETAILED DESCRIPTION
zipinfo has a number of modes, and its behavior can be rather difficult
to fathom if one isn't familiar with Unix ls(1) (or even if one is).
The default behavior is to list files in the following format:
-rw-rws--- 1.9 unx 2802 t- defX 11-Aug-91 13:48 perms.2660
The last three fields are the modification date and time of the file,
and its name. The case of the filename is respected; thus files that
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.9 of zip. Since it comes from Unix, the file per-
missions at the beginning 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', indicat-
ing that zip believes the file to be text or binary, respectively; but
if the file is encrypted, zipinfo notes this fact by capitalizing the
character (`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 (fully explained in
PKWare's APPNOTE.TXT, but basically analogous to pragmas in ANSI
C--i.e., they provide a standard way to include non-standard informa-
tion in the archive). 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 (probably) a text file, is not encrypted, and has nei-
ther 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 for various purposes (see discussion of the -v
option below) including the storage of VMS file attributes, which is
presumably the case here. Note that the file attributes are listed in
VMS format. Some other possibilities for the host operating system
(which is actually a misnomer--host file system is more correct)
include OS/2 or NT with High Performance File System (HPFS), MS-DOS,
OS/2 or NT with File Allocation Table (FAT) file system, and Macintosh.
These are denoted as follows:
-rw-a-- 1.0 hpf 5358 Tl i4:3 4-Dec-91 11:33 longfilename.hpfs
-r--ahs 1.1 fat 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
File attributes in the first two cases are indicated in a Unix-like
format, where the seven subfields indicate whether the file: (1) is a
directory, (2) is readable (always true), (3) is writable, (4) is exe-
cutable (guessed on the basis of the extension--.exe, .com, .bat, .cmd
and .btm files are assumed to be so), (5) has its archive bit set, (6)
is hidden, and (7) is a system file. Interpretation of Macintosh file
attributes is unreliable because some Macintosh archivers don't store
any attributes in the archive.
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 (never pub-
licly released), and deflating. In addition, there are four levels of
reducing (1 through 4); four types of imploding (4K or 8K sliding dic-
tionary, and 2 or 3 Shannon-Fano trees); and four levels of deflating
(superfast, 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 defS, 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 lists the file's compression factor as a percentage indicating
the amount of space that has been ``removed'':
-rw-rws--- 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 original size. The long
format gives the compressed file's size in bytes, instead:
-rw-rws--- 1.5 unx 2802 t- 538 defX 11-Aug-91 13:48 perms.2660
In contrast to the unzip listings, the compressed size figures in this
listing format denote the complete size of compressed data, including
the 12 extra header bytes in case of encrypted entries.
Adding the -T option changes the file date and time to decimal format:
-rw-rws--- 1.5 unx 2802 t- 538 defX 910811.134804 perms.2660
Note that because of limitations in the MS-DOS format used to store
file times, the seconds field is always rounded to the nearest even
second. For Unix files this is expected to change in the next major
releases of zip(1L) and unzip.
In addition to individual file information, a default zipfile listing
also includes header and trailer lines:
Archive: OS2.zip 5453 bytes 5 files
,,rw, 1.0 hpf 730 b- i4:3 26-Jun-92 23:40 Contents
,,rw, 1.0 hpf 3710 b- i4:3 26-Jun-92 23:33 makefile.os2
,,rw, 1.0 hpf 8753 b- i8:3 26-Jun-92 15:29 os2unzip.c
,,rw, 1.0 hpf 98 b- stor 21-Aug-91 15:34 unzip.def
,,rw, 1.0 hpf 95 b- stor 21-Aug-91 17:51 zipinfo.def
5 files, 13386 bytes uncompressed, 4951 bytes compressed: 63.0%
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
file(s) are provided, the header and trailer lines are not listed.
This behavior is also similar to that of Unix's ``ls -l''; it may be
overridden by specifying the -h and -t options explicitly. In such a
case the listing format must also be specified explicitly, since -h or
( run in 0.748 second using v1.01-cache-2.11-cpan-800906f7e73 )