Initial Windows agent repository
This commit is contained in:
commit
a0db0c2e5b
10589 changed files with 3844063 additions and 0 deletions
82
OGP64/usr/share/doc/unzip/BUGS
Normal file
82
OGP64/usr/share/doc/unzip/BUGS
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
Bogus bugs (not our fault!):
|
||||
---------------------------
|
||||
|
||||
By far THE BIGGEST source of bug reports to Info-ZIP/zip-bugs is the
|
||||
incorrect transfer of zipfiles (or of the UnZip executable itself).
|
||||
ALWAYS TRANSFER IN BINARY MODE! This includes ftp transfers and *both*
|
||||
ends of a Kermit connection ("set file type binary"). If your copy
|
||||
isn't exactly the same size as the original, you made a mistake.
|
||||
|
||||
Another common source of errors such as "compression method 8 not sup-
|
||||
ported" is the existence of an old version of UnZip somewhere in your
|
||||
path. Make sure you're using the version you think you're using; give
|
||||
the full path explicitly if necessary. Executing "unzip" without any
|
||||
options will print a help screen, at the top of which is the UnZip
|
||||
version number and release date; and executing "unzip -v" without any
|
||||
zipfile or other options will give information about what compiler was
|
||||
used, the target operating system, any special UnZip options, and the
|
||||
date of compilation--only for version 5.11 and later, though! (Also,
|
||||
under Unix C shell and some Bourne shells, "which unzip" will print
|
||||
the path of the unzip you're actually using. Under OS/2 and MS-DOS,
|
||||
whch21gr.zip [on Simtel mirror sites] will do the same thing; in addi-
|
||||
tion, "which -a unzip" will show *all* copies of "unzip" in your path.)
|
||||
|
||||
|
||||
Bugs (real and/or imagined):
|
||||
---------------------------
|
||||
|
||||
- [OS/2 DLL] when trying to use the REXX function UzUnZipToStem to extract a
|
||||
file with `&' in its name, the DLL crashes (but UzUnZipToVar still works)
|
||||
[Daniel H, 961215]
|
||||
- UnZip has problems with archives bigger than 2GB; it may print "note: didn't
|
||||
find end-of-central-dir signature at end of central dir" (harmless) or
|
||||
may not be able to seek to member files [James Lemley 970107, Iris Spaniol
|
||||
970206, ...]
|
||||
|
||||
Fixed with Zip64 support in UnZip 6.0
|
||||
|
||||
- fix overwrite behavior: hidden/system problems?; etc.
|
||||
- 32-bit DOS UnZip still unable to set volume labels?
|
||||
- 32-bit DOS UnZip under OS/2 doesn't extract all wildcard zipfiles?
|
||||
[DOS box: unzip386 (ver 5.12) x:\32bit\unix\emx09a\*.zip, Hobbes 3/95]
|
||||
- 32-bit DOS UnZip under OS/2 doesn't set timestamp when overwriting files
|
||||
on HPFS partition? (go32 and pmode/w both; emx/rsx OK) [Eberhard Mattes
|
||||
950726]
|
||||
- USE_FWRITE still causes occasional CRC errors when extracting on Pyramid?
|
||||
[Kevin Fritz 931102]
|
||||
- still NT/W95 bug with "unzip -v d:*.zip" not matching properly? [Steve S
|
||||
940527]
|
||||
980427: bug no longer exists, Opendir() must have been corrected by someone
|
||||
|
||||
- when ^Z received in no-echo mode, echo is not restored (works OK if
|
||||
resume, however)
|
||||
- signal() handler disabled after first use with one of BSD/SysV?
|
||||
- MKS Korn shell: unzip assumes the MKS-style command-line environment
|
||||
options are relevant to it, but this is not the case if unzip was called
|
||||
by another program (e.g., from a .BAT file). A fix for this exists for
|
||||
Borland compilers but not for MSC, Watcom, djgpp, etc.
|
||||
- OS/2: for paths with one long component, the .LONGNAME EA may be saved for
|
||||
all components (waste of disk space): how to check??
|
||||
- VMS: for extracting to other directories, only the VMS-style "-d [.foo]"
|
||||
format is accepted; "-d foo" should also be allowed. Long filenames are
|
||||
not automatically truncated to 39.39.
|
||||
- Novell Netware: Netware drives may clear the archive bit on extracted
|
||||
files under OS/2 and/or MS-DOS. UnZip always *tries* to set the archive
|
||||
bit, however. [pynq@uchicago, 940527]
|
||||
- DEC Ultrix: on long zipfiles, unzip will sometimes fail (bad CRC, not always
|
||||
reproducible); this is apparently due either to a hardware bug (cache mem)
|
||||
or OS bug (page faults?) [Igor, Jean-loup, bottom of BUGS.long]
|
||||
- funzip/more/decryption/no-echo bug: race condition(?) causes terminal to
|
||||
be "reset" to no-echo state
|
||||
- Macintosh (100200), Atari (020000) external file attributes not interpreted
|
||||
correctly (both unzip and zipinfo)
|
||||
- pkbug error: zipfile with incorrect csize and/or ucsize--check for end of
|
||||
compressed (csize) data in uncompression routines:
|
||||
unreduce.c: while (((outpos + outcnt) < ucsize) && (!zipeof)) {
|
||||
[James Birdsall, Mark, bottom of BUGS.long]
|
||||
- OS/2: directory EAs not restored if directory exists [Kai Uwe, KG27515@uark]
|
||||
(subsequent note: no way to determine which EAs are newer ==> cannot
|
||||
restore without user input)
|
||||
(update: as of UnZip 5.30, option -o forces restoring of directory EAs)
|
||||
- MS-DOS: Borland executables don't allow other than 80-column, 25/43/50-line
|
||||
screen modes (Borland bug) [Michael Stillwell]
|
||||
1117
OGP64/usr/share/doc/unzip/History.600
Normal file
1117
OGP64/usr/share/doc/unzip/History.600
Normal file
File diff suppressed because it is too large
Load diff
62
OGP64/usr/share/doc/unzip/LICENSE
Normal file
62
OGP64/usr/share/doc/unzip/LICENSE
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
This is version 2009-Jan-02 of the Info-ZIP license.
|
||||
The definitive version of this document should be available at
|
||||
ftp://ftp.info-zip.org/pub/infozip/license.html indefinitely and
|
||||
a copy at http://www.info-zip.org/pub/infozip/license.html.
|
||||
|
||||
|
||||
Copyright (c) 1990-2009 Info-ZIP. All rights reserved.
|
||||
|
||||
For the purposes of this copyright and license, "Info-ZIP" is defined as
|
||||
the following set of individuals:
|
||||
|
||||
Mark Adler, John Bush, Karl Davis, Harald Denker, Jean-Michel Dubois,
|
||||
Jean-loup Gailly, Hunter Goatley, Ed Gordon, Ian Gorman, Chris Herborth,
|
||||
Dirk Haase, Greg Hartwig, Robert Heath, Jonathan Hudson, Paul Kienitz,
|
||||
David Kirschbaum, Johnny Lee, Onno van der Linden, Igor Mandrichenko,
|
||||
Steve P. Miller, Sergio Monesi, Keith Owens, George Petrov, Greg Roelofs,
|
||||
Kai Uwe Rommel, Steve Salisbury, Dave Smith, Steven M. Schweda,
|
||||
Christian Spieler, Cosmin Truta, Antoine Verheijen, Paul von Behren,
|
||||
Rich Wales, Mike White.
|
||||
|
||||
This software is provided "as is," without warranty of any kind, express
|
||||
or implied. In no event shall Info-ZIP or its contributors be held liable
|
||||
for any direct, indirect, incidental, special or consequential damages
|
||||
arising out of the use of or inability to use this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any purpose,
|
||||
including commercial applications, and to alter it and redistribute it
|
||||
freely, subject to the above disclaimer and the following restrictions:
|
||||
|
||||
1. Redistributions of source code (in whole or in part) must retain
|
||||
the above copyright notice, definition, disclaimer, and this list
|
||||
of conditions.
|
||||
|
||||
2. Redistributions in binary form (compiled executables and libraries)
|
||||
must reproduce the above copyright notice, definition, disclaimer,
|
||||
and this list of conditions in documentation and/or other materials
|
||||
provided with the distribution. Additional documentation is not needed
|
||||
for executables where a command line license option provides these and
|
||||
a note regarding this option is in the executable's startup banner. The
|
||||
sole exception to this condition is redistribution of a standard
|
||||
UnZipSFX binary (including SFXWiz) as part of a self-extracting archive;
|
||||
that is permitted without inclusion of this license, as long as the
|
||||
normal SFX banner has not been removed from the binary or disabled.
|
||||
|
||||
3. Altered versions--including, but not limited to, ports to new operating
|
||||
systems, existing ports with new graphical interfaces, versions with
|
||||
modified or added functionality, and dynamic, shared, or static library
|
||||
versions not from Info-ZIP--must be plainly marked as such and must not
|
||||
be misrepresented as being the original source or, if binaries,
|
||||
compiled from the original source. Such altered versions also must not
|
||||
be misrepresented as being Info-ZIP releases--including, but not
|
||||
limited to, labeling of the altered versions with the names "Info-ZIP"
|
||||
(or any variation thereof, including, but not limited to, different
|
||||
capitalizations), "Pocket UnZip," "WiZ" or "MacZip" without the
|
||||
explicit permission of Info-ZIP. Such altered versions are further
|
||||
prohibited from misrepresentative use of the Zip-Bugs or Info-ZIP
|
||||
e-mail addresses or the Info-ZIP URL(s), such as to imply Info-ZIP
|
||||
will provide support for the altered versions.
|
||||
|
||||
4. Info-ZIP retains the right to use the names "Info-ZIP," "Zip," "UnZip,"
|
||||
"UnZipSFX," "WiZ," "Pocket UnZip," "Pocket Zip," and "MacZip" for its
|
||||
own source and binary releases.
|
||||
347
OGP64/usr/share/doc/unzip/README
Normal file
347
OGP64/usr/share/doc/unzip/README
Normal file
|
|
@ -0,0 +1,347 @@
|
|||
This is the README file for the 20 April 2009 public release of the
|
||||
Info-ZIP group's portable UnZip zipfile-extraction program (and related
|
||||
utilities).
|
||||
|
||||
unzip60.zip portable UnZip, version 6.0, source code distribution
|
||||
unzip60.tar.Z same as above, but compress'd tar format
|
||||
unzip60.tar.gz same as above, but gzip'd tar format
|
||||
|
||||
__________________________________________________________________________
|
||||
|
||||
BEFORE YOU ASK: UnZip, its companion utility Zip, and related utilities
|
||||
and support files can be found in many places; read the file "WHERE" for
|
||||
further details. To contact the authors with suggestions, bug reports,
|
||||
or fixes, continue reading this file (README) and, if this is part of a
|
||||
source distribution, the file "ZipPorts" in the proginfo directory. Also
|
||||
in source distributions: read "BUGS" for a list of known bugs, non-bugs
|
||||
and possible future bugs; INSTALL for instructions on how to build UnZip;
|
||||
and "Contents" for a commented listing of all the distributed files.
|
||||
__________________________________________________________________________
|
||||
|
||||
|
||||
GENERAL INFO
|
||||
------------
|
||||
UnZip is an extraction utility for archives compressed in .zip format (also
|
||||
called "zipfiles"). Although highly compatible both with PKWARE's PKZIP
|
||||
and PKUNZIP utilities for MS-DOS and with Info-ZIP's own Zip program, our
|
||||
primary objectives have been portability and non-MSDOS functionality.
|
||||
|
||||
This version of UnZip has been ported to a stupendous array of hardware--
|
||||
from micros to supercomputers--and operating systems: Unix (many flavors),
|
||||
VMS, OS/2 (including DLL version), Windows NT and Windows 95 (including DLL
|
||||
version), Windows CE (GUI version), Windows 3.x (including DLL version),
|
||||
MS-DOS, AmigaDOS, Atari TOS, Acorn RISC OS, BeOS, Macintosh (GUI version),
|
||||
SMS/QDOS, MVS, VM/CMS, FlexOS, Tandem NSK, Human68k (mostly), AOS/VS (partly)
|
||||
and TOPS-20 (partly). UnZip features not found in PKUNZIP include source
|
||||
code; default extraction of directory trees (with a switch to defeat this,
|
||||
rather than the reverse); system-specific extended file attributes; and, of
|
||||
course, the ability to run under most of your favorite operating systems.
|
||||
Plus, it's free. :-)
|
||||
|
||||
For source distributions, see the main Contents file for a list of what's
|
||||
included, and read INSTALL for instructions on compiling (including OS-
|
||||
specific comments). The individual operating systems' Contents files (for
|
||||
example, vms/Contents) may list important compilation info in addition to
|
||||
explaining what files are what, so be sure to read them. Some of the ports
|
||||
have their own, special README files, so be sure to look for those, too.
|
||||
|
||||
See unzip.1 or unzip.txt for usage (or the corresponding UnZipSFX, ZipInfo,
|
||||
fUnZip and ZipGrep docs). For VMS, unzip_def.rnh or unzip_cli.help may be
|
||||
compiled into unzip.hlp and installed as a normal VMS help entry; see
|
||||
vms/descrip.mms.
|
||||
|
||||
|
||||
CHANGES AND NEW FEATURES
|
||||
------------------------
|
||||
UnZip 6.0 finally supports nowadays "large" files of sizes > 2 GiB!
|
||||
This is the first release containing support for the PKWARE Zip64
|
||||
enhancements.
|
||||
Major changes are:
|
||||
- Support PKWARE ZIP64 extensions, allowing Zip archives and Zip archive
|
||||
entries larger than 4 GiBytes and more than 65536 entries within a single
|
||||
Zip archive. This support is currently only available for Unix,
|
||||
OpenVMS and Win32/Win64.
|
||||
- Support for bzip2 compression method.
|
||||
- Support for UTF-8 encoded entry names, both through PKWARE's "General
|
||||
Purpose Flags Bit 11" indicator and Info-ZIP's new "up" unicode path
|
||||
extra field. (Currently, on Windows the UTF-8 handling is limited to
|
||||
the character subset contained in the configured non-unicode "system
|
||||
code page".)
|
||||
- Added "wrong implementation used" warning to error messages of the MSDOS
|
||||
port when used under Win32, in an attempt to reduce false bug reports.
|
||||
- Fixed "Time of Creation/Time of Use" vulnerability when setting attributes
|
||||
of extracted files, for Unix and Unix-like ports.
|
||||
- Fixed memory leak when processing invalid deflated data.
|
||||
- Fixed long-standing bug in unshrink (partial_clear), added boundary checks
|
||||
against invalid compressed data.
|
||||
- On Unix, keep inherited SGID attribute bit for extracted directories
|
||||
unless restoration of owner/group id or SUID/SGID/Tacky attributes was
|
||||
requested.
|
||||
- On Unix, allow extracted filenames to contain embedded control characters
|
||||
when explicitly requested by specifying the new command line option "-^".
|
||||
- On Unix, support restoration of symbolic link attributes.
|
||||
- On Unix, support restoration of 32-bit UID/GID data using the new "ux"
|
||||
IZUNIX3 extra field introduced with Zip 3.0.
|
||||
- Support for ODS5 extended filename syntax on new OpenVMS systems.
|
||||
- Support symbolic links zipped up on VMS.
|
||||
- On VMS (only 8.x or better), support symbolic link creation.
|
||||
- On VMS, support option to create converted text files in Stream_LF format.
|
||||
- New -D option to suppress restoration of timestamps for extracted
|
||||
directory entries (on those ports that support setting of directory
|
||||
timestamps). By specifying "-DD", this new option also allows to suppress
|
||||
timestamp restoration for ALL extracted files on all UnZip ports which
|
||||
support restoration of timestamps.
|
||||
On VMS, the default behaviour is now to skip restoration of directory
|
||||
timestamps; here, "--D" restores ALL timestamps, "-D" restores none.
|
||||
- On OS/2, Win32, and Unix, the (previously optional) feature UNIXBACKUP
|
||||
to allow saving backup copies of overwritten files on extraction is now
|
||||
enabled by default.
|
||||
|
||||
For the UnZip 6.0 release, we want to give special credit to Myles Bennet,
|
||||
who started the job of supporting ZIP64 extensions and Large-File (> 2GiB)
|
||||
and provided a first (alpha-state) port.
|
||||
|
||||
The 5.52 maintenance release fixes a few minor problems found in the 5.51
|
||||
release, closes some more security holes, adds a new AtheOS port, and
|
||||
contains a Win32 extra-field code cleanup that was not finished earlier.
|
||||
The most important changes are:
|
||||
|
||||
- (re)enabled unshrinking support by default, the LZW patents have expired
|
||||
- fixed an extraction size bug for encrypted stored entries (12 excess bytes
|
||||
were written with 5.51)
|
||||
- fixed false "uncompressed size mismatch" messages when extracting
|
||||
encrypted archive entries
|
||||
- do not restore SUID/SGID/Tacky attribute bits on Unix (BeOS, AtheOS)
|
||||
unless explicitely requested by new "-K" command line qualifier
|
||||
- optional support for "-W" qualifier to modify the pattern matching syntax
|
||||
(with -W: "*" stops at directory delimiter, "**" matches unlimited)
|
||||
- prevent buffer overflow caused by bogus extra-long Zipfile specification
|
||||
- performance enhancements for VMS port
|
||||
- fixed windll interface handling of its extraction mode qualifiers
|
||||
nfflag, ExtractOnlyNewer, noflag, PromptToOverwrite; added detailed
|
||||
explanation of their meanings and interactions to the windll documentation
|
||||
|
||||
The 5.51 maintenance release adds a command-line CE port, intended for
|
||||
batch processing. With the integration of this port, the pUnZip port
|
||||
has been revised and "revitalized".
|
||||
The most important changes for the general public are a number of
|
||||
bug fixes, mostly related to security issues:
|
||||
|
||||
- repair a serious bug in the textmode output conversion code for the 16-bit
|
||||
ports (16-bit MSDOS, OS/2 1.x, some variants of AMIGA, possibly others)
|
||||
which was introduced by the Deflate64 support of release 5.5
|
||||
- fix a long standing bug in the the inflate decompression method that
|
||||
prevented correct extraction in some rare cases
|
||||
- fixed holes in parent dir traversal security code (e.g.: ".^C." slipped
|
||||
through the previous version of the check code)
|
||||
- fixed security hole: check naming consistency in local and central header
|
||||
- fixed security hole: prevent extracted symlinks from redirecting file
|
||||
extraction paths
|
||||
|
||||
The main addition in the 5.5 release is support for PKWARE's new Deflate64(tm)
|
||||
algorithm, which appeared first in PKZIP 4.0 (published November 2000).
|
||||
As usual, some other bugfixes and clean-ups have been integrated:
|
||||
|
||||
- support for Deflate64 (Zip compression method #9)
|
||||
- support for extracting VMS variable length record text files on
|
||||
any system
|
||||
- optional "cheap autorun" feature for the SFX stub
|
||||
- security fixes:
|
||||
* strip leading slash from stored pathspecs,
|
||||
* remove "../" parent dir path components from extracted file names
|
||||
- new option "-:" to allow verbatim extraction of file names containing
|
||||
"../" parent dir path specs
|
||||
- fixed file handle leak for the DLL code
|
||||
- repaired OS2 & WinNT ACL extraction which was broken in 5.42
|
||||
|
||||
The 5.42 maintenance release fixes more bugs and cleans up the redistribution
|
||||
conditions:
|
||||
|
||||
- removal of unreduce.c and amiga/timelib.c code to get rid of the last
|
||||
distribution restrictions beyond the BSD-like Info-ZIP LICENSE
|
||||
- new generic timelib replacement (currently used by AMIGA port)
|
||||
- more reasonable mapping rules of UNIX "leading-dot" filenames to the
|
||||
DOS 8.3 name convention
|
||||
- repaired screensize detection in MORE paging code
|
||||
(was broken for DOS/OS2/WIN32 in 5.41)
|
||||
|
||||
The 5.41 maintenance release adds another new port and fixes some bugs.
|
||||
|
||||
- new BSD-like LICENSE
|
||||
- new Novell Netware NLM port
|
||||
- supports extraction of archives with more than 64k entries
|
||||
- attribute handling of VMS port was broken in UnZip 5.4
|
||||
- decryption support integrated in the main source distribution
|
||||
|
||||
The 5.4 release adds new ports, again. Other important items are changes
|
||||
to the listing format, new supplemental features and several bug fixes
|
||||
(especially concerning time-stamp handling...):
|
||||
|
||||
- new IBM OS/390 port, a UNIX derivate (POSIX with EBCDIC charset)
|
||||
- complete revision of the MacOS port
|
||||
- changed listing formats to enlarge the file size fields for more digits
|
||||
- added capability to restore directory attributes on MSDOS, OS/2, WIN32
|
||||
- enabled support of symbolic links on BeOS
|
||||
- Unix: optional Acorn filetype support, useful for volumes exported via NFS
|
||||
- several changes/additions to the DLL API
|
||||
- GUI SFX stub for Win16 (Windows 3.1) and Win32 (Windows 9x, Windows NT)
|
||||
- new free GCC compiler environments supported on WIN32
|
||||
- many time-zone handling bug fixes for WIN32, AMIGA, ...
|
||||
|
||||
The 5.32 release adds two new ports and a fix for at least one relatively
|
||||
serious bug:
|
||||
|
||||
- new FlexOS port
|
||||
- new Tandem NSK port
|
||||
- new Visual BASIC support (compatibility with the Windows DLLs)
|
||||
- new -T option (set zipfile timestamp) for virtually all ports
|
||||
- fix for timestamps beyond 2038 (e.g., 2097; crashed under DOS/Win95/NT)
|
||||
- fix for undetected "dangling" symbolic links (i.e., no pointee)
|
||||
- fix for VMS indexed-file extraction problem (stored with Zip 2.0 or 2.1)
|
||||
- further performance optimizations
|
||||
|
||||
The 5.31 release included nothing but small bug-fixes and typo corrections,
|
||||
with the exception of some minor performance tweaks.
|
||||
|
||||
The 5.3 release added still more ports and more cross-platform portability
|
||||
features:
|
||||
|
||||
- new BeOS port
|
||||
- new SMS/QDOS port
|
||||
- new Windows CE graphical port
|
||||
- VM/CMS port fully updated and tested
|
||||
- MVS port fully updated and tested
|
||||
- updated Windows DLL port, with WiZ GUI spun off to a separate package
|
||||
- full Universal Time (UTC or GMT) support for trans-timezone consistency
|
||||
- cross-platform support for 8-bit characters (ISO Latin-1, OEM code pages)
|
||||
- support for NT security descriptors (ACLs)
|
||||
- support for overwriting OS/2 directory EAs if -o option given
|
||||
- updated Solaris/SVR4 package facility
|
||||
|
||||
What is (still!) not added is multi-part archive support (a.k.a. "diskette
|
||||
spanning", though we really mean archive splitting and not the old diskette
|
||||
spanning) and a unified and more powerful DLL interface. These are the two
|
||||
highest priorities for the 6.x releases. Work on the former is almost
|
||||
certain to have commenced by the time you read this. This time we mean it!
|
||||
You betcha. :-)
|
||||
|
||||
Although the DLLs are still basically a mess, the Windows DLLs (16- and 32-
|
||||
bit) now have some documentation and a small example application. Note that
|
||||
they should now be compatible with C/C++, Visual BASIC and Delphi. Weirder
|
||||
languages (FoxBase, etc.) are probably Right Out.
|
||||
|
||||
|
||||
INTERNET RESOURCES
|
||||
------------------
|
||||
|
||||
Info-ZIP's web site is at http://www.info-zip.org/pub/infozip/
|
||||
and contains the most up-to-date information about coming releases,
|
||||
links to binaries, and common problems.
|
||||
(See http://www.info-zip.org/pub/infozip/FAQ.html for the latter.)
|
||||
Files may also be retrieved via ftp://ftp.info-zip.org/pub/infozip/ .
|
||||
Thanks to LEO (Munich, Germany) for previously hosting our primary site.
|
||||
|
||||
|
||||
DISTRIBUTION
|
||||
------------
|
||||
If you have a question regarding redistribution of Info-ZIP software, either
|
||||
as is, as packaging for a commercial product, or as an integral part of a
|
||||
commercial product, please read the Frequently Asked Questions (FAQ) section
|
||||
of the included COPYING file. All Info-ZIP releases are now covered by
|
||||
the Info-ZIP license. See the file LICENSE. The most current license
|
||||
should be available at http://www.info-zip.org/license.html and
|
||||
ftp://ftp.info-zip.org/pub/infozip/license.html.
|
||||
|
||||
Insofar as C compilers are rare on some platforms and the authors only have
|
||||
direct access to a subset of the supported systems, others may wish to pro-
|
||||
vide ready-to-run executables for new systems. In general there is no prob-
|
||||
lem with this; we require only that such distributions include this README
|
||||
file, the WHERE file, the LICENSE file (contains copyright/redistribution
|
||||
information), and the appropriate documentation files (unzip.txt and/or
|
||||
unzip.1 for UnZip, etc.). If the local system provides a way to make self-
|
||||
extracting archives in which both the executables and text files can be
|
||||
stored together, that's best (in particular, use UnZipSFX if at all possible,
|
||||
even if it's a few kilobytes bigger than the alternatives); otherwise we
|
||||
suggest a bare UnZip executable and a separate zipfile containing the re-
|
||||
maining text and binary files. If another archiving method is in common
|
||||
use on the target system (for example, Zoo or LHa), that may also be used.
|
||||
|
||||
|
||||
BUGS AND NEW PORTS: CONTACTING INFO-ZIP
|
||||
----------------------------------------
|
||||
All bug reports and patches (context diffs only, please!) should be
|
||||
submitted either through the new Info-ZIP Discussion Forum at
|
||||
http://www.info-zip.org/board/board.pl or through the Info-ZIP SourceForge
|
||||
site at http://sourceforge.net/projects/infozip/. The forum allows file
|
||||
attachments while SourceForge provides a place to post patches. The old
|
||||
Zip-Bugs@lists.wku.edu e-mail address for the Info-ZIP authors was
|
||||
discontinued after heavy continuous spam, as was the QuickTopic discussion
|
||||
forum. The above methods are public, but we also can be reached directly
|
||||
using the web reply page at http://www.info-zip.org/zip-bug.html. If you
|
||||
need to send us files privately, contact us first for instructions.
|
||||
|
||||
"Dumb questions" that aren't adequately answered in the documentation
|
||||
should also be directed to Zip-Bugs rather than to a global forum such
|
||||
as Usenet. (Kindly make certain that your question *isn't* answered by
|
||||
the documentation, however--a great deal of effort has gone into making
|
||||
it clear and complete.)
|
||||
|
||||
Suggestions for new features can be discussed on the new Discussion Forum.
|
||||
A new mailing list for Info-ZIP beta testers and interested parties may
|
||||
be created someday, but for now any issues found in the betas should use
|
||||
the forum. We make no promises to act on all suggestions or even all
|
||||
patches, but if it is something that is manifestly useful, sending the
|
||||
required patches to Zip-Bugs directly (as per the instructions in the
|
||||
ZipPorts file) is likely to produce a quicker response than asking us to
|
||||
do it--the authors are always ridiculously short on time. (Please do
|
||||
NOT send patches or encoded zipfiles to the Info-ZIP list. Please DO
|
||||
read the ZipPorts file before sending any large patch. It would be
|
||||
difficult to over-emphasize this point...)
|
||||
|
||||
If you are considering a port, not only should you read the ZipPorts file,
|
||||
but also please check in with Zip-Bugs BEFORE getting started, since the
|
||||
code is constantly being updated behind the scenes. (For example, VxWorks,
|
||||
VMOS and Netware ports were once claimed to be under construction, although
|
||||
we have yet to see any up-to-date patches.) We will arrange to send you the
|
||||
latest sources. The alternative is the possibility that your hard work will
|
||||
be tucked away in a subdirectory and mostly ignored, or completely ignored
|
||||
if someone else has already done the port (and you'd be surprised how often
|
||||
this has happened).
|
||||
|
||||
|
||||
BETA TESTING: JOINING INFO-ZIP
|
||||
-------------------------------
|
||||
If you'd like to keep up to date with our UnZip (and companion Zip utility)
|
||||
development, join the ranks of beta testers, add your own thoughts and
|
||||
contributions, or simply lurk, you may join one of our mailing lists.
|
||||
There is an announcements-only list (Info-ZIP-announce) and a general
|
||||
discussion/testing list (Info-ZIP). You must be a subscriber to post, and
|
||||
you can subscribe via the links on our Frequently Asked Questions page:
|
||||
|
||||
http://www.info-zip.org/pub/infozip/FAQ.html#lists
|
||||
|
||||
(Please note that as of late May 2004, the lists are unavailable pending
|
||||
a move to a new site; we hope to have them restored shortly. In the
|
||||
interim ...) Feel free to use our bug-reporting web page for bug reports
|
||||
and to ask questions not answered on the FAQ page above:
|
||||
|
||||
http://www.info-zip.org/zip-bug.html
|
||||
|
||||
For now the best option is to monitor and contribute to the various threads
|
||||
on the new discussion forum site at:
|
||||
|
||||
http://www.info-zip.org/board/board.pl
|
||||
|
||||
The second best way to contribute is through the various features at
|
||||
SourceForge, such as the bug posting areas.
|
||||
|
||||
There is also a closed mailing list for internal discussions of our core
|
||||
development team. This list is now kept secret to prevent us from being
|
||||
flooded with spam messages.
|
||||
|
||||
|
||||
-- Greg Roelofs (sometimes known as Cave Newt), principal UnZip developer
|
||||
guy, with inspiration from David Kirschbaum, was Author of this text.
|
||||
|
||||
-- Christian Spieler (shorthand: SPC), current UnZip maintenance coordinator,
|
||||
applied the most recent changes, with Ed Gordon providing a few additions.
|
||||
226
OGP64/usr/share/doc/unzip/TODO
Normal file
226
OGP64/usr/share/doc/unzip/TODO
Normal file
|
|
@ -0,0 +1,226 @@
|
|||
================================
|
||||
For UnZip 6.1/who knows:
|
||||
================================
|
||||
|
||||
o add extraction support for other compression algorithms used by new
|
||||
PKZIP, WinZIP, 7-Zip versions
|
||||
- LZMA, compression type 14 (most important, because of its efficiency)
|
||||
- PPMd, compression type 98 (maybe, less important)
|
||||
- WavPacked, compression type 97 (maybe, less important)
|
||||
|
||||
LZMA is first-level priority for 6.1, other formats may be taken
|
||||
into consideration
|
||||
|
||||
o add support for reading AES encrypted archives
|
||||
- WinZIP format (priority 1)
|
||||
- PKZip format (priority 2)
|
||||
|
||||
top level item for 6.1
|
||||
|
||||
o add multi-part zipfile handling
|
||||
|
||||
major feature for 6.x!
|
||||
|
||||
could happen for 6.1
|
||||
|
||||
o better support for multilingual uses and different codepages;
|
||||
support unicode (UTF-8 coded) filenames and comment texts
|
||||
|
||||
a requested feature getting more and more important,
|
||||
- partially done for the Windows port in 6.0
|
||||
(support restricted for chars of the current system codepage)
|
||||
- partially done (beta state) for Unix
|
||||
(requires native codepage to be UTF-8)
|
||||
|
||||
o complete support for UTF-8 coded entry names (and comments)
|
||||
- add new "win32_wide" port to extend unicode support on Windows
|
||||
beyond the restrictions of the current (ANSI) system codepage
|
||||
- revise/extend the WinDLL interface to allow passing of "wide"
|
||||
string argument data
|
||||
- add simple built-in character translation between UTF-8 and the
|
||||
old (ISO-8851-1 / IBM850) code pages to allow old systems without
|
||||
standard UTF-8 support to read UTF-8 encoded archives.
|
||||
- extend the built-in translation tables to support other language
|
||||
regions besides "Western_Latin1" (e.g. Russian-kyrillic, Japanese,
|
||||
Chinese)
|
||||
- streamline the multilingual codepage and UTF-8 support for the UNIX
|
||||
port (standard codepage translation facility?, like WideChar<->AnsiCP
|
||||
translation functions under MS Windows)
|
||||
|
||||
should happen for 6.1
|
||||
(there is internal alpha-state code for better "wide" support on
|
||||
Windows available at the time of the 6.0 release)
|
||||
|
||||
o revise the "extended charcodes" handling in decryption password to
|
||||
support UTF-8 encoding on Unicode-aware systems where the "native"
|
||||
character coding is NOT UTF-8 (e.g. Windows).
|
||||
|
||||
o revise the command line interface for more compatibility with Zip'
|
||||
command parser
|
||||
- implement the versatile command parser from Zip 3.0.
|
||||
- add "long option" definitions for all existing options; revise
|
||||
the UnZip user manual to document the long-option alternatives.
|
||||
- add support for reading the "process these entries" and the "skip
|
||||
these entries" pattern lists from a file (or from separate files ?).
|
||||
- add a (long) option to switch off UnZip's internal pattern matching
|
||||
on filename arguments.
|
||||
|
||||
probably in 6.1,
|
||||
(first prototype of the revised command parser was available at the
|
||||
time of the 6.0 release)
|
||||
|
||||
o add command line options for miscellaneous features requested by users
|
||||
and/or development team members:
|
||||
- display the Info-ZIP software license
|
||||
- more fine-tuning for file attributes set/restored at extraction, like:
|
||||
set/clear archive attribute on DOS/OS2/WIN32;
|
||||
apply/skip standard or user-defined umask filter on UNIX (& Unix-alike)
|
||||
- additional time-stamp related processing filters
|
||||
- more listing display modifications
|
||||
- overriding the default date-time display style
|
||||
- ...
|
||||
|
||||
All these options are of minor importance and/or would collide with
|
||||
existing "one-character" options. The current UnZip maintainer does not
|
||||
want to reserve any of the few not-yet-occupied short option characters.
|
||||
for one of these features. So, any implementation effort for items
|
||||
of this feature wish-list has to be delayed until the "long option"
|
||||
support of the revised command line parser becomes available.
|
||||
|
||||
some option may get implemented in 6.1
|
||||
|
||||
o support for
|
||||
and/or development team members:
|
||||
|
||||
o add new low-level, binary API; rewrite "normal" (command-line) UnZip
|
||||
to use it
|
||||
|
||||
maybe soon (maybe 6.1)
|
||||
|
||||
o MSDOS/WIN32/others: detection of "reserved" names (= names of character
|
||||
devices, or system extensions that look like a characters device driver)
|
||||
at runtime; with the goal of emitting "meaningful" error messages and/or
|
||||
rename queries.
|
||||
(Currently, these reserved names are catched as "non-deletable files".
|
||||
On MSDOS and WIN32, when the RTL stat() function allows to identify
|
||||
character devices, the "reserved" names are automatically prefixed with
|
||||
an underscore.)
|
||||
|
||||
o redesign "file exists -- is newer/older -- overwrite/skip/rename"
|
||||
logic in extract.c and the corresponding system specific mapname()
|
||||
services; to prevent superfluous decryption key prompts for entry
|
||||
that will be skipped, later.
|
||||
|
||||
o rewrite to use fread/fseek/etc. [eventually: test
|
||||
write(bytes) vs. fwrite(words), especially on Crays/Alphas]
|
||||
|
||||
soon (probably in conjunction with multi-part handling)
|
||||
|
||||
o incorporate new backfill version of inflate()
|
||||
|
||||
wait for zlib version
|
||||
|
||||
o check NEXTBYTE for EOF in crypt.c, funzip.c and explode.c, too
|
||||
|
||||
whenever
|
||||
|
||||
o add option to force completely non-interactive operation (no queries
|
||||
for overwrite/rename, password, etc.); also allow some sort of non-
|
||||
interactive password provision? (file? command-line? env. variable?)
|
||||
|
||||
someday?
|
||||
|
||||
o add testing of extra fields (if have CRC)
|
||||
|
||||
later
|
||||
|
||||
o rewrite to allow use as a filter
|
||||
|
||||
way, way later...
|
||||
|
||||
o add Unix hard-link support?
|
||||
|
||||
way, way later...
|
||||
|
||||
o add ".ini" file support as a (more elaborate) alternative to the presently
|
||||
supported preconfiguring abilities via special environment variables
|
||||
(UNZIP on many systems...)?
|
||||
|
||||
way, way later (if ever)...
|
||||
|
||||
o add option to search zipfile contents for a string and print the
|
||||
results? ("zipgrep" option--e.g., unzip -g or unzip -S) (easy for
|
||||
fixed strings, hard for wildcards/true regex's)
|
||||
|
||||
way, way later, if at all...probably use libregex
|
||||
|
||||
o add -y "display symlinks" option to zipinfo? various sorting options?
|
||||
(-St date/time, -Sn name)?
|
||||
|
||||
who knows
|
||||
|
||||
o add "in-depth" option to zipinfo? (check local headers against
|
||||
central, etc.)--make it a better debugging tool (or just create
|
||||
zipfix)
|
||||
|
||||
who knows (zip -F, -FF already exist)
|
||||
|
||||
Some maintenance or OS specific topics for 6.0 release:
|
||||
|
||||
* add "unix-style-path -> partitioned-dataset filename" conversion
|
||||
to MVS port
|
||||
|
||||
* should we add support for (null) entry names (empty entry name field), to
|
||||
conform to the PKWARE specification?
|
||||
|
||||
|
||||
=======================================
|
||||
|
||||
Requested features:
|
||||
|
||||
- extract or exclude on basis of UID [Armin Bub, Armin.Bub@bk.bosch.de, 970904]
|
||||
|
||||
=======================================
|
||||
|
||||
o miscellaneous little stuff: whenever
|
||||
--------------------------
|
||||
|
||||
- change DOS -f/-u stuff to use DOS API for getting filetimes, not stat()
|
||||
|
||||
- add (-N?) option to lose all user input and/or switch to "(*input)()"
|
||||
function, replaceable by UzpAltMain() param
|
||||
- add -@ option to read from stdin (zip) or from file (PKZIP)? (go32 built-in)
|
||||
- add -oo option to overwrite OS/2 and DOS system and hidden files, too
|
||||
- add option to compute MD5 checksum on files and/or on entire zipfile?
|
||||
|
||||
- decide whether to use WinGUI "skipping" diagnostics in extract.c
|
||||
- combine "y/n/A/N" query/response stuff into unified section with query
|
||||
function(s) (InputFn?)
|
||||
- disable ^V code in remaining mapname() routines
|
||||
|
||||
- change filename-matching logic so case-insensitive if case-sensitive fails?
|
||||
|
||||
- allow multiple dir creation with -d option? [Bob Maynard]
|
||||
|
||||
- use gcc -pg, gprof to do profiling on unzip
|
||||
|
||||
- Doug Patriarche (doug.patriarche.bvdhp01@nt.com) Northern Telecom Canada Ltd.
|
||||
"I need to do a port of zip/unzip for Wind River Systems' VxWorks OS"
|
||||
[GRR: 15 March 95 -> "early June"]
|
||||
|
||||
|
||||
Features from old BUGS file (mostly duplicates of other entries above):
|
||||
|
||||
- ignore case for internal filename match on non-Unix systems, unless file-
|
||||
specs enclosed in single quotes
|
||||
- modify to decompress input stream if part of a pipe, but continue using
|
||||
central directory if not (BIG job!)--extended local header capability
|
||||
- add zipinfo option(s) to sort alphabetically, by date/time, in reverse, etc.
|
||||
- when listing filenames, use '?' for non-printables? [Thomas Wolff, 92.6.1]
|
||||
- add zipinfo "in-depth" option? (check local vs. central filenames, etc.)
|
||||
- create zipcat program to concatenate zipfiles
|
||||
- add -oo option (overwrite and override)? no user queries (if bad password,
|
||||
skip file; if disk full, take default action; if VMS special on non-VMS,
|
||||
unpack anyway; etc.)
|
||||
- add -Q[Q[Q]] option (quiet mode on comments, cautions, warnings and errors)?
|
||||
forget -oo, or make synonym? Default level -Q?
|
||||
266
OGP64/usr/share/doc/unzip/WHERE
Normal file
266
OGP64/usr/share/doc/unzip/WHERE
Normal file
|
|
@ -0,0 +1,266 @@
|
|||
__________________________________________________________________________
|
||||
|
||||
This is the Info-ZIP file ``WHERE,'' last updated on 29 March 2008.
|
||||
__________________________________________________________________________
|
||||
|
||||
The latest version of this file can be found online at:
|
||||
|
||||
ftp://ftp.info-zip.org/pub/infozip/doc/WHERE
|
||||
|
||||
Note that some ftp sites may not yet have the latest versions of Zip
|
||||
and UnZip when you read this. The latest versions always appear in
|
||||
ftp://ftp.info-zip.org/pub/infozip/ (and subdirectories thereof) first,
|
||||
except for encryption binaries, which always appear in
|
||||
ftp://ftp.icce.rug.nl/infozip/ (and subdirectories) first.
|
||||
|
||||
IF YOU FIND AN ERROR: please let us know! We don't have time to
|
||||
check each and every site personally (or even collectively), so any
|
||||
number of the sites listed below may have moved or disappeared en-
|
||||
tirely. E-mail to Zip-Bugs@lists.wku.edu and we'll update this file.
|
||||
__________________________________________________________________________
|
||||
|
||||
|
||||
Info-ZIP's home WWW site is listed on Yahoo and is at:
|
||||
|
||||
ftp://ftp.info-zip.org/pub/infozip/Info-ZIP.html (master version)
|
||||
http://ftp.info-zip.org/pub/infozip/ (master version)
|
||||
http://www.info-zip.org/
|
||||
|
||||
Note that the old sites at http://www.cdrom.com/pub/infozip/ and
|
||||
http://www.freesoftware.com/pub/infozip are PERMANENTLY BROKEN. They
|
||||
cannot be updated or removed, apparently.
|
||||
|
||||
The Zip and UnZip pages have links to most known mirror sites carrying our
|
||||
source and/or binary distributions, and they generally are more up-to-date
|
||||
and have better information than what you are reading:
|
||||
|
||||
ftp://ftp.info-zip.org/pub/infozip/Zip.html
|
||||
ftp://ftp.info-zip.org/pub/infozip/UnZip.html
|
||||
|
||||
The related zlib package by Info-ZIP's Jean-loup Gailly and Mark Adler is at:
|
||||
|
||||
http://www.zlib.net/
|
||||
|
||||
Source-code archives for Info-ZIP's portable Zip, UnZip, and related
|
||||
utilities:
|
||||
|
||||
zip30.zip Zip 3.0 (deflation, bzip2, ZIP64 large archives, multi-
|
||||
volume splits; includes zipnote/zipsplit/zipcloak)
|
||||
zip30.tar.Z ditto, compress'd tar format
|
||||
|
||||
zip232.zip Zip 2.32 (deflation; includes zipnote/zipsplit/zipcloak)
|
||||
zip232.tar.Z ditto, compress'd tar format
|
||||
|
||||
zip11.zip Zip 1.1 (shrinking, implosion; compatible w. PKUNZIP 1.1)
|
||||
zip11.tar.Z ditto, compress'd tar format
|
||||
|
||||
unzip60.zip UnZip 6.0 (all methods[*]; unzip/funzip/unzipsfx/zipgrep)
|
||||
unzip60.tar.gz ditto, gzip'd tar format
|
||||
unzip60.tar.Z ditto, compress'd tar format
|
||||
|
||||
unred60.zip UnZip 6.0 add-on, contains copyrighted unreduce support
|
||||
|
||||
zcrypt29.zip encryption support for Zip 2.3[**]
|
||||
zcrypt10.zip encryption support for Zip 1.1
|
||||
|
||||
MacZip106src.zip contains all the GUI stuff and the project files to build
|
||||
the MacZip main-app. To build MacZip successfully, both
|
||||
the Zip 3.0 and UnZip 6.0 sources are required, too.
|
||||
|
||||
wiz601.zip WiZ 6.01, Windows 9x/NT GUI front-end for Info-ZIP's DLLs,
|
||||
as well as the source code and project files for the DLLs,
|
||||
and static libraries.
|
||||
|
||||
[*] Unreducing is disabled by default, but is available as add-on.
|
||||
As of July 2004, Unisys's LZW patent was expired worldwide, and
|
||||
unshrinking is turned on by default since the release of UnZip 5.52.
|
||||
See UnZip's INSTALL file for details.
|
||||
|
||||
[**] As of January 2000, US export regulations were amended to allow export
|
||||
of free encryption source code from the US. As of June 2002, these
|
||||
regulations were further relaxed to allow export of encryption binaries
|
||||
associated with free encryption source code. The Zip 2.31, UnZip 5.52
|
||||
and Wiz 5.02 archives now include full crypto source code. As of the
|
||||
Zip 2.31 release, all official binaries include encryption support; the
|
||||
former "zcr" archives ceased to exist.
|
||||
(Note that restrictions may still exist in other countries, of course.)
|
||||
|
||||
Executables archives (and related files) for Info-ZIP's software; not all
|
||||
of these will be immediately available due to lack of access to appropriate
|
||||
systems on the part of Info-ZIP members.
|
||||
|
||||
zip###x.zip MSDOS executables and docs
|
||||
zip###x1.zip OS/2 1.x (16-bit) executables and docs
|
||||
zip###x2.zip OS/2 2/3/4.x (32-bit) executables and docs
|
||||
zip###xA.zip Amiga executables and docs
|
||||
zip###xB.zip BeOS executables and docs
|
||||
zip###xC.zip VM/CMS executable and docs
|
||||
zip###xK.zip Tandem NSK executables and docs
|
||||
zip###xM.xmit MVS classic executable
|
||||
zip###xM-docs.zip MVS classic port, docs only
|
||||
zip###dN.zip WinNT/Win9x (Intel) DLL, header files, docs
|
||||
zip###xN.zip WinNT/Win9x (Intel) executables and docs
|
||||
zip###xN-axp.zip WinNT (Alpha AXP) executables and docs
|
||||
zip###xN-mip.zip WinNT (MIPS R4000) executables and docs
|
||||
zip###xN-ppc.zip WinNT (PowerPC) executables and docs
|
||||
zip###xO.zip IBM OS/390 Open Edition binaries and docs
|
||||
zip###xQ.zip SMS/QDOS executables and docs
|
||||
zip###xR.zip Acorn RISC OS executables and docs
|
||||
zip###xT.zip Atari TOS executables and docs
|
||||
zip###-vms-axp-obj.zip
|
||||
VMS (Alpha AXP) object libs, link procedure and docs
|
||||
zip###-vms-axp-exe.zip
|
||||
VMS (Alpha AXP) executables for VMS 6.1 or later and docs
|
||||
zip###-vms-vax-decc-obj.zip
|
||||
VMS (VAX) object libs (new DEC C), link procedure and docs
|
||||
zip###-vms-vax-decc-exe.zip
|
||||
VMS (VAX) executables (DEC C) for VMS 6.1 or later; docs
|
||||
zip###-vms-vax-vaxc-obj.zip
|
||||
VMS (VAX) object libs (old VAX C), link procedure and docs
|
||||
zip###x.hqx Macintosh BinHex'd executables and docs
|
||||
|
||||
unz###x.exe MSDOS self-extracting executable (16-bit unzip, ..., docs)
|
||||
unz###x3.exe MSDOS self-extracting executable (16-, 32-bit unzip, docs)
|
||||
unz###x1.exe OS/2 1.x (16-bit) self-extracting executables and docs
|
||||
unz###x2.exe OS/2 2/3/4.x (32-bit) self-extracting executables and docs
|
||||
unz###d2.zip OS/2 2/3/4.x (32-bit) DLL, header file, demo exe and docs
|
||||
unz###xA.ami Amiga self-extracting executables and docs
|
||||
unz###xA.lha Amiga executables and docs, LHa archive
|
||||
unz###xB.sfx BeOS self-extracting executables and docs
|
||||
unz###xB.tar.gz BeOS executables and docs, gzip'd tar archive
|
||||
unz###xC.mod VM/CMS executable module in "packed" format
|
||||
unz###xC-docs.zip VM/CMS docs, only
|
||||
unz###xF.zip FlexOS executable and docs
|
||||
unz###xK.zip Tandem NSK executable and docs
|
||||
unz###xM.xmit MVS classic executable
|
||||
unz###xM-docs.zip MVS classic port, docs only
|
||||
unz###dN.zip NT4/W2K/XP/2K3/W9x (32-bit Intel) DLL, header files, docs
|
||||
unz###xN.exe NT/2K/XP/2K3/W9x self-extracting i386 executables and docs
|
||||
unz###xN-axp.exe WinNT (Alpha AXP) self-extracting executables and docs
|
||||
unz###xN-mip.exe WinNT (MIPS R4000) self-extracting executables and docs
|
||||
unz###xN-ppc.exe WinNT (PowerPC) self-extracting executables and docs
|
||||
unz###xQ.sfx SMS/QDOS self-extracting executables and docs
|
||||
unz###xO.tar.Z IBM OS/390 Open edition (Unix-like), exes and docs
|
||||
unz###xR.exe Acorn RISC OS self-extracting executables and docs
|
||||
unz###xR.spk Acorn RISC OS Spark'd executables and docs
|
||||
unz###xT.tos Atari TOS self-extracting executables and docs
|
||||
unz###x-vms-axp-obj.bck VMS backup saveset,
|
||||
contains UnZip (Alpha) obj libs, link procedure, docs
|
||||
unz###x-vms-axp-obj.exe VMS (Alpha AXP) SFX archive (statically linked),
|
||||
contains UnZip (Alpha) obj libs, link procedure, docs
|
||||
unz###x-vms-axp-exe.exe VMS (Alpha AXP) SFX archive (dynamically linked),
|
||||
contains UnZip (Alpha AXP, DEC C) executables and docs,
|
||||
smaller than object archive, but requires VMS 6.1
|
||||
unz###x-vms-vax-decc-obj.bck VMS backup saveset,
|
||||
contains UnZip (new DEC C) obj libs, link procedure, docs
|
||||
unz###x-vms-vax-decc-obj.exe VMS (VAX) SFX archive (statically linked),
|
||||
contains UnZip (new DEC C) obj libs, link procedure, docs
|
||||
unz###x-vms-vax-decc-exe.exe VMS (VAX) SFX archive (dynamically linked),
|
||||
contains UnZip (new DEC C) executables and docs,
|
||||
smaller than object archive, but requires VMS 6.1
|
||||
unz###x-vms-vax-vaxc-obj.bck VMS backup saveset,
|
||||
contains UnZip (old VAX C) obj libs, link procedure, docs
|
||||
unz###x-vms-vax-vaxc-obj.exe VMS (VAX) SFX archive (statically linked),
|
||||
contains UnZip (old VAX C) obj libs, link procedure, docs
|
||||
unz###x.hqx Macintosh BinHex'd executables and docs for unzip
|
||||
(unz###x.tar.{Z,gz} Unix exes/docs for Solaris 2.x, SCO Unix, Linux, etc.,
|
||||
depending on directory/location; generally only provided
|
||||
in cases where the OS does *not* ship with a bundled C
|
||||
compiler)
|
||||
|
||||
MacZip106nc.hqx Macintosh combined Zip&UnZip application with GUI,
|
||||
executables and docs (no encryption)
|
||||
MacZip106c.hqx Macintosh combined Zip&UnZip application with GUI,
|
||||
executables and docs (with encryption)
|
||||
|
||||
wiz###xN.exe WiZ #.## 32-bit (Win9x/NT/2K/XP/2K3) app+docs (self-extr.)
|
||||
|
||||
UnzpHist.zip complete changes-history of UnZip and its precursors
|
||||
ZipHist.zip complete changes-history of Zip
|
||||
|
||||
ftp/web sites for the US-exportable sources and executables:
|
||||
|
||||
NOTE: Look for the Info-ZIP file names given above (not PKWARE or third-
|
||||
party stuff) in the following locations. Some sites like to use slightly
|
||||
different names, such as zip-#.##.tar.gz instead of zip###.tar.Z.
|
||||
|
||||
http://sourceforge.net/project/showfiles.php?group_id=118012
|
||||
[THE INFO-ZIP SOURCES HOME SITE]
|
||||
|
||||
ftp://ftp.info-zip.org/pub/infozip/ [THE INFO-ZIP HOME SITE]
|
||||
ftp://sunsite.doc.ic.ac.uk/packages/zip/ [MIRRORS THE INFO-ZIP HOME SITE]
|
||||
ftp://unix.hensa.ac.uk/mirrors/uunet/pub/archiving/zip/
|
||||
|
||||
ftp://ftp.cmdl.noaa.gov/aerosol/doc/archiver/{all,dos,os2,mac,vax_alpha}/
|
||||
ftp://garbo.uwasa.fi/pc/arcers/ [AND OTHER GARBO MIRRORS]
|
||||
ftp://garbo.uwasa.fi/unix/arcers/ [AND OTHER GARBO MIRRORS]
|
||||
ftp://ftp.elf.stuba.sk/pub/pc/pack/ [AND OTHER STUBA MIRRORS]
|
||||
ftp://ftp-os2.cdrom.com/pub/os2/archiver/
|
||||
ftp://ftp-os2.nmsu.edu/os2/archiver/
|
||||
ftp://ftp.informatik.tu-muenchen.de/pub/comp/os/os2/archiver/
|
||||
ftp://sumex-aim.stanford.edu/info-mac/cmp/
|
||||
ftp://ftp.wustl.edu/pub/aminet/util/arc/ [AND OTHER AMINET MIRRORS]
|
||||
ftp://atari.archive.umich.edu/pub/Archivers/ [AND OTHER UMICH MIRRORS]
|
||||
http://www.umich.edu/~archive/atari/Archivers/
|
||||
ftp://jake.educom.com.au/pub/infozip/acorn/ [Acorn RISC OS]
|
||||
http://www.sitec.net/maczip/ [MacZip port]
|
||||
|
||||
ftp/web sites for the encryption and decryption sources and/or executables:
|
||||
|
||||
Outside the US:
|
||||
ftp://ftp.info-zip.org/pub/infozip/ [THE INFO-ZIP HOME SITE]
|
||||
ftp://ftp.icce.rug.nl/infozip/ [THE INFO-ZIP ENCRYPTION HOME SITE]
|
||||
ftp://ftp.elf.stuba.sk/pub/pc/pack/
|
||||
ftp://garbo.uwasa.fi/pc/arcers/
|
||||
ftp://ftp.inria.fr/system/arch-compr/
|
||||
ftp://ftp.leo.org/pub/comp/os/os2/leo/archiver/
|
||||
(mail server at ftp-mailer@ftp.leo.org)
|
||||
|
||||
ftp://ftp.win.tue.nl/pub/compression/zip/
|
||||
ftp://ftp.uni-erlangen.de/pub/pc/msdos/arc-utils/zip/
|
||||
|
||||
|
||||
The primary distribution site for the MacZip port can be found at:
|
||||
|
||||
http://www.sitec.net/maczip/
|
||||
|
||||
ftp sites for VMS-format Zip and UnZip packages (sources, object files and
|
||||
executables, no encryption/decryption--see also "Mail servers" section below):
|
||||
|
||||
ftp.spc.edu [192.107.46.27] and ftp.wku.edu:
|
||||
|
||||
[.MACRO32]AAAREADME.TXT
|
||||
[.MACRO32.SAVESETS]UNZIP.BCK or UNZIP.ZIP (if already have older version)
|
||||
[.MACRO32.SAVESETS]ZIP.ZIP
|
||||
|
||||
To find other ftp/web sites:
|
||||
|
||||
The "archie" ftp database utility can be used to find an ftp site near
|
||||
you (although the command-line versions always seem to find old ver-
|
||||
sions...the `FTPsearch' server at http://ftpsearch.ntnu.no/ftpsearch
|
||||
--formerly `Archie 95'--is quite up-to-date, however). Or check a stan-
|
||||
dard WWW search engine like AltaVista (http://www.altavista.digital.com/)
|
||||
or Yahoo (http://www.yahoo.com/). If you don't know how to use these,
|
||||
DON'T ASK US--read the web sites' help pages or check the Usenet groups
|
||||
news.announce.newusers or news.answers or some such, or ask your system
|
||||
administrator.
|
||||
|
||||
Mail servers:
|
||||
|
||||
To get the encryption sources by e-mail, send the following commands
|
||||
to ftp-mailer@informatik.tu-muenchen.de:
|
||||
|
||||
get /pub/comp/os/os2/archiver/zcrypt29.zip
|
||||
quit
|
||||
|
||||
To get the VMS Zip/UnZip package by e-mail, send the following
|
||||
commands in the body of a mail message to fileserv@wku.edu (the
|
||||
"HELP" command is also accepted):
|
||||
|
||||
SEND FILESERV_TOOLS
|
||||
SEND UNZIP
|
||||
SEND ZIP
|
||||
|
||||
To get Atari executables by e-mail, send a message to
|
||||
atari@atari.archive.umich.edu for information about the mail server.
|
||||
__________________________________________________________________________
|
||||
92
OGP64/usr/share/doc/unzip/funzip.txt
Normal file
92
OGP64/usr/share/doc/unzip/funzip.txt
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
FUNZIP(1L) FUNZIP(1L)
|
||||
|
||||
NAME
|
||||
funzip - filter for extracting from a ZIP archive in a pipe
|
||||
|
||||
SYNOPSIS
|
||||
funzip [-password] [input[.zip|.gz]]
|
||||
|
||||
ARGUMENTS
|
||||
[-password]
|
||||
Optional password to be used if ZIP archive is encrypted.
|
||||
Decryption may not be supported at some sites. See DESCRIPTION
|
||||
for more details.
|
||||
|
||||
[input[.zip|.gz]]
|
||||
Optional input archive file specification. See DESCRIPTION for
|
||||
details.
|
||||
|
||||
DESCRIPTION
|
||||
funzip without a file argument acts as a filter; that is, it assumes
|
||||
that a ZIP archive (or a gzip'd(1) file) is being piped into standard
|
||||
input, and it extracts the first member from the archive to stdout.
|
||||
When stdin comes from a tty device, funzip assumes that this cannot be
|
||||
a stream of (binary) compressed data and shows a short help text,
|
||||
instead. If there is a file argument, then input is read from the
|
||||
specified file instead of from stdin.
|
||||
|
||||
A password for encrypted zip files can be specified on the command line
|
||||
(preceding the file name, if any) by prefixing the password with a
|
||||
dash. Note that this constitutes a security risk on many systems; cur-
|
||||
rently running processes are often visible via simple commands (e.g.,
|
||||
ps(1) under Unix), and command-line histories can be read. If the
|
||||
first entry of the zip file is encrypted and no password is specified
|
||||
on the command line, then the user is prompted for a password and the
|
||||
password is not echoed on the console.
|
||||
|
||||
Given the limitation on single-member extraction, funzip is most useful
|
||||
in conjunction with a secondary archiver program such as tar(1). The
|
||||
following section includes an example illustrating this usage in the
|
||||
case of disk backups to tape.
|
||||
|
||||
EXAMPLES
|
||||
To use funzip to extract the first member file of the archive test.zip
|
||||
and to pipe it into more(1):
|
||||
|
||||
funzip test.zip | more
|
||||
|
||||
To use funzip to test the first member file of test.zip (any errors
|
||||
will be reported on standard error):
|
||||
|
||||
funzip test.zip > /dev/null
|
||||
|
||||
To use zip and funzip in place of compress(1) and zcat(1) (or gzip(1L)
|
||||
and gzcat(1L)) for tape backups:
|
||||
|
||||
tar cf - . | zip -7 | dd of=/dev/nrst0 obs=8k
|
||||
dd if=/dev/nrst0 ibs=8k | funzip | tar xf -
|
||||
|
||||
(where, for example, nrst0 is a SCSI tape drive).
|
||||
|
||||
BUGS
|
||||
When piping an encrypted file into more and allowing funzip to prompt
|
||||
for password, the terminal may sometimes be reset to a non-echo mode.
|
||||
This is apparently due to a race condition between the two programs;
|
||||
funzip changes the terminal mode to non-echo before more reads its
|
||||
state, and more then ``restores'' the terminal to this mode before
|
||||
exiting. To recover, run funzip on the same file but redirect to
|
||||
/dev/null rather than piping into more; after prompting again for the
|
||||
password, funzip will reset the terminal properly.
|
||||
|
||||
There is presently no way to extract any member but the first from a
|
||||
ZIP archive. This would be useful in the case where a ZIP archive is
|
||||
included within another archive. In the case where the first member is
|
||||
a directory, funzip simply creates the directory and exits.
|
||||
|
||||
The functionality of funzip should be incorporated into unzip itself
|
||||
(future release).
|
||||
|
||||
SEE ALSO
|
||||
gzip(1L), unzip(1L), unzipsfx(1L), zip(1L), zipcloak(1L), zipinfo(1L),
|
||||
zipnote(1L), zipsplit(1L)
|
||||
|
||||
URL
|
||||
The Info-ZIP home page is currently at
|
||||
http://www.info-zip.org/pub/infozip/
|
||||
or
|
||||
ftp://ftp.info-zip.org/pub/infozip/ .
|
||||
|
||||
AUTHOR
|
||||
Mark Adler (Info-ZIP)
|
||||
|
||||
Info-ZIP 20 April 2009 (v3.95) FUNZIP(1L)
|
||||
955
OGP64/usr/share/doc/unzip/unzip.txt
Normal file
955
OGP64/usr/share/doc/unzip/unzip.txt
Normal file
|
|
@ -0,0 +1,955 @@
|
|||
UNZIP(1L) UNZIP(1L)
|
||||
|
||||
NAME
|
||||
unzip - list, test and extract compressed files in a ZIP archive
|
||||
|
||||
SYNOPSIS
|
||||
unzip [-Z] [-cflptTuvz[abjnoqsCDKLMUVWX$/:^]] file[.zip] [file(s) ...]
|
||||
[-x xfile(s) ...] [-d exdir]
|
||||
|
||||
DESCRIPTION
|
||||
unzip will list, test, or extract files from a ZIP archive, commonly
|
||||
found on MS-DOS systems. The default behavior (with no options) is to
|
||||
extract into the current directory (and subdirectories below it) all
|
||||
files from the specified ZIP archive. A companion program, zip(1L),
|
||||
creates ZIP archives; both programs are compatible with archives cre-
|
||||
ated by PKWARE's PKZIP and PKUNZIP for MS-DOS, but in many cases the
|
||||
program options or default behaviors differ.
|
||||
|
||||
ARGUMENTS
|
||||
file[.zip]
|
||||
Path of the ZIP archive(s). If the file specification is a
|
||||
wildcard, each matching file is processed in an order determined
|
||||
by the operating system (or file system). Only the filename can
|
||||
be a wildcard; the path itself cannot. Wildcard expressions are
|
||||
similar to those supported in commonly used Unix shells (sh,
|
||||
ksh, csh) 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 an exclamation point or a
|
||||
caret (`!' or `^') follows the left bracket, then the
|
||||
range of characters within the brackets is complemented
|
||||
(that is, anything except the characters inside the
|
||||
brackets is considered a match). To specify a verbatim
|
||||
left bracket, the three-character sequence ``[[]'' has to
|
||||
be used.
|
||||
|
||||
(Be sure to quote any character that might otherwise be inter-
|
||||
preted or modified by the operating system, particularly under
|
||||
Unix and VMS.) If no matches are found, the specification is
|
||||
assumed to be a literal filename; and if that also fails, the
|
||||
suffix .zip is appended. Note that self-extracting ZIP files
|
||||
are supported, as with any other ZIP archive; just specify the
|
||||
.exe suffix (if any) explicitly.
|
||||
|
||||
[file(s)]
|
||||
An optional list of archive members to be processed, separated
|
||||
by spaces. (VMS versions compiled with VMSCLI defined must
|
||||
delimit files with commas instead. See -v in OPTIONS below.)
|
||||
Regular expressions (wildcards) may be used to match multiple
|
||||
members; see above. Again, be sure to quote expressions that
|
||||
would otherwise be expanded or modified by the operating system.
|
||||
|
||||
[-x xfile(s)]
|
||||
An optional list of archive members to be excluded from process-
|
||||
ing. Since wildcard characters normally match (`/') directory
|
||||
separators (for exceptions see the option -W), this option may
|
||||
be used to exclude any files that are in subdirectories. For
|
||||
example, ``unzip foo *.[ch] -x */*'' would extract all C source
|
||||
files in the main directory, but none in any subdirectories.
|
||||
Without the -x option, all C source files in all directories
|
||||
within the zipfile would be extracted.
|
||||
|
||||
[-d exdir]
|
||||
An optional directory to which to extract files. By default,
|
||||
all files and subdirectories are recreated in the current direc-
|
||||
tory; the -d option allows extraction in an arbitrary directory
|
||||
(always assuming one has permission to write to the directory).
|
||||
This option need not appear at the end of the command line; it
|
||||
is also accepted before the zipfile specification (with the nor-
|
||||
mal options), immediately after the zipfile specification, or
|
||||
between the file(s) and the -x option. The option and directory
|
||||
may be concatenated without any white space between them, but
|
||||
note that this may cause normal shell behavior to be suppressed.
|
||||
In particular, ``-d ~'' (tilde) is expanded by Unix C shells
|
||||
into the name of the user's home directory, but ``-d~'' is
|
||||
treated as a literal subdirectory ``~'' of the current direc-
|
||||
tory.
|
||||
|
||||
OPTIONS
|
||||
Note that, in order to support obsolescent hardware, unzip's usage
|
||||
screen is limited to 22 or 23 lines and should therefore be considered
|
||||
only a reminder of the basic unzip syntax rather than an exhaustive
|
||||
list of all possible flags. The exhaustive list follows:
|
||||
|
||||
-Z zipinfo(1L) mode. If the first option on the command line is
|
||||
-Z, the remaining options are taken to be zipinfo(1L) options.
|
||||
See the appropriate manual page for a description of these
|
||||
options.
|
||||
|
||||
-A [OS/2, Unix DLL] print extended help for the DLL's programming
|
||||
interface (API).
|
||||
|
||||
-c extract files to stdout/screen (``CRT''). This option is simi-
|
||||
lar to the -p option except that the name of each file is
|
||||
printed as it is extracted, the -a option is allowed, and ASCII-
|
||||
EBCDIC conversion is automatically performed if appropriate.
|
||||
This option is not listed in the unzip usage screen.
|
||||
|
||||
-f freshen existing files, i.e., extract only those files that
|
||||
already exist on disk and that are newer than the disk copies.
|
||||
By default unzip queries before overwriting, but the -o option
|
||||
may be used to suppress the queries. Note that under many oper-
|
||||
ating systems, the TZ (timezone) environment variable must be
|
||||
set correctly in order for -f and -u to work properly (under
|
||||
Unix the variable is usually set automatically). The reasons
|
||||
for this are somewhat subtle but have to do with the differences
|
||||
between DOS-format file times (always local time) and Unix-for-
|
||||
mat times (always in GMT/UTC) and the necessity to compare the
|
||||
two. A typical TZ value is ``PST8PDT'' (US Pacific time with
|
||||
automatic adjustment for Daylight Savings Time or ``summer
|
||||
time'').
|
||||
|
||||
-l list archive files (short format). The names, uncompressed file
|
||||
sizes and modification dates and times of the specified files
|
||||
are printed, along with totals for all files specified. If
|
||||
UnZip was compiled with OS2_EAS defined, the -l option also
|
||||
lists columns for the sizes of stored OS/2 extended attributes
|
||||
(EAs) and OS/2 access control lists (ACLs). In addition, the
|
||||
zipfile comment and individual file comments (if any) are dis-
|
||||
played. If a file was archived from a single-case file system
|
||||
(for example, the old MS-DOS FAT file system) and the -L option
|
||||
was given, the filename is converted to lowercase and is pre-
|
||||
fixed with a caret (^).
|
||||
|
||||
-p extract files to pipe (stdout). Nothing but the file data is
|
||||
sent to stdout, and the files are always extracted in binary
|
||||
format, just as they are stored (no conversions).
|
||||
|
||||
-t test archive files. This option extracts each specified file in
|
||||
memory and compares the CRC (cyclic redundancy check, an
|
||||
enhanced checksum) of the expanded file with the original file's
|
||||
stored CRC value.
|
||||
|
||||
-T [most OSes] set the timestamp on the archive(s) to that of the
|
||||
newest file in each one. This corresponds to zip's -go option
|
||||
except that it can be used on wildcard zipfiles (e.g., ``unzip
|
||||
-T \*.zip'') and is much faster.
|
||||
|
||||
-u update existing files and create new ones if needed. This
|
||||
option performs the same function as the -f option, extracting
|
||||
(with query) files that are newer than those with the same name
|
||||
on disk, and in addition it extracts those files that do not
|
||||
already exist on disk. See -f above for information on setting
|
||||
the timezone properly.
|
||||
|
||||
-v list archive files (verbose format) or show diagnostic version
|
||||
info. This option has evolved and now behaves as both an option
|
||||
and a modifier. As an option it has two purposes: when a zip-
|
||||
file is specified with no other options, -v lists archive files
|
||||
verbosely, adding to the basic -l info the compression method,
|
||||
compressed size, compression ratio and 32-bit CRC. In contrast
|
||||
to most of the competing utilities, unzip removes the 12 addi-
|
||||
tional header bytes of encrypted entries from the compressed
|
||||
size numbers. Therefore, compressed size and compression ratio
|
||||
figures are independent of the entry's encryption status and
|
||||
show the correct compression performance. (The complete size of
|
||||
the encrypted compressed data stream for zipfile entries is
|
||||
reported by the more verbose zipinfo(1L) reports, see the sepa-
|
||||
rate manual.) When no zipfile is specified (that is, the com-
|
||||
plete command is simply ``unzip -v''), a diagnostic screen is
|
||||
printed. In addition to the normal header with release date and
|
||||
version, unzip lists the home Info-ZIP ftp site and where to
|
||||
find a list of other ftp and non-ftp sites; the target operating
|
||||
system for which it was compiled, as well as (possibly) the
|
||||
hardware on which it was compiled, the compiler and version
|
||||
used, and the compilation date; any special compilation options
|
||||
that might affect the program's operation (see also DECRYPTION
|
||||
below); and any options stored in environment variables that
|
||||
might do the same (see ENVIRONMENT OPTIONS below). As a modi-
|
||||
fier it works in conjunction with other options (e.g., -t) to
|
||||
produce more verbose or debugging output; this is not yet fully
|
||||
implemented but will be in future releases.
|
||||
|
||||
-z display only the archive comment.
|
||||
|
||||
MODIFIERS
|
||||
-a convert text files. Ordinarily all files are extracted exactly
|
||||
as they are stored (as ``binary'' files). The -a option causes
|
||||
files identified by zip as text files (those with the `t' label
|
||||
in zipinfo listings, rather than `b') to be automatically
|
||||
extracted as such, converting line endings, end-of-file charac-
|
||||
ters and the character set itself as necessary. (For example,
|
||||
Unix files use line feeds (LFs) for end-of-line (EOL) and have
|
||||
no end-of-file (EOF) marker; Macintoshes use carriage returns
|
||||
(CRs) for EOLs; and most PC operating systems use CR+LF for EOLs
|
||||
and control-Z for EOF. In addition, IBM mainframes and the
|
||||
Michigan Terminal System use EBCDIC rather than the more common
|
||||
ASCII character set, and NT supports Unicode.) Note that zip's
|
||||
identification of text files is by no means perfect; some
|
||||
``text'' files may actually be binary and vice versa. unzip
|
||||
therefore prints ``[text]'' or ``[binary]'' as a visual check
|
||||
for each file it extracts when using the -a option. The -aa
|
||||
option forces all files to be extracted as text, regardless of
|
||||
the supposed file type. On VMS, see also -S.
|
||||
|
||||
-b [general] treat all files as binary (no text conversions). This
|
||||
is a shortcut for ---a.
|
||||
|
||||
-b [Tandem] force the creation files with filecode type 180 ('C')
|
||||
when extracting Zip entries marked as "text". (On Tandem, -a is
|
||||
enabled by default, see above).
|
||||
|
||||
-b [VMS] auto-convert binary files (see -a above) to fixed-length,
|
||||
512-byte record format. Doubling the option (-bb) forces all
|
||||
files to be extracted in this format. When extracting to stan-
|
||||
dard output (-c or -p option in effect), the default conversion
|
||||
of text record delimiters is disabled for binary (-b) resp. all
|
||||
(-bb) files.
|
||||
|
||||
-B [when compiled with UNIXBACKUP defined] save a backup copy of
|
||||
each overwritten file. The backup file is gets the name of the
|
||||
target file with a tilde and optionally a unique sequence number
|
||||
(up to 5 digits) appended. The sequence number is applied when-
|
||||
ever another file with the original name plus tilde already
|
||||
exists. When used together with the "overwrite all" option -o,
|
||||
numbered backup files are never created. In this case, all
|
||||
backup files are named as the original file with an appended
|
||||
tilde, existing backup files are deleted without notice. This
|
||||
feature works similarly to the default behavior of emacs(1) in
|
||||
many locations.
|
||||
|
||||
Example: the old copy of ``foo'' is renamed to ``foo~''.
|
||||
|
||||
Warning: Users should be aware that the -B option does not pre-
|
||||
vent loss of existing data under all circumstances. For exam-
|
||||
ple, when unzip is run in overwrite-all mode, an existing
|
||||
``foo~'' file is deleted before unzip attempts to rename ``foo''
|
||||
to ``foo~''. When this rename attempt fails (because of a file
|
||||
locks, insufficient privileges, or ...), the extraction of
|
||||
``foo~'' gets cancelled, but the old backup file is already
|
||||
lost. A similar scenario takes place when the sequence number
|
||||
range for numbered backup files gets exhausted (99999, or 65535
|
||||
for 16-bit systems). In this case, the backup file with the
|
||||
maximum sequence number is deleted and replaced by the new
|
||||
backup version without notice.
|
||||
|
||||
-C use case-insensitive matching for the selection of archive
|
||||
entries from the command-line list of extract selection pat-
|
||||
terns. unzip's philosophy is ``you get what you ask for'' (this
|
||||
is also responsible for the -L/-U change; see the relevant
|
||||
options below). Because some file systems are fully case-sensi-
|
||||
tive (notably those under the Unix operating system) and because
|
||||
both ZIP archives and unzip itself are portable across plat-
|
||||
forms, unzip's default behavior is to match both wildcard and
|
||||
literal filenames case-sensitively. That is, specifying ``make-
|
||||
file'' on the command line will only match ``makefile'' in the
|
||||
archive, not ``Makefile'' or ``MAKEFILE'' (and similarly for
|
||||
wildcard specifications). Since this does not correspond to the
|
||||
behavior of many other operating/file systems (for example, OS/2
|
||||
HPFS, which preserves mixed case but is not sensitive to it),
|
||||
the -C option may be used to force all filename matches to be
|
||||
case-insensitive. In the example above, all three files would
|
||||
then match ``makefile'' (or ``make*'', or similar). The -C
|
||||
option affects file specs in both the normal file list and the
|
||||
excluded-file list (xlist).
|
||||
|
||||
Please note that the -C option does neither affect the search
|
||||
for the zipfile(s) nor the matching of archive entries to exist-
|
||||
ing files on the extraction path. On a case-sensitive file sys-
|
||||
tem, unzip will never try to overwrite a file ``FOO'' when
|
||||
extracting an entry ``foo''!
|
||||
|
||||
-D skip restoration of timestamps for extracted items. Normally,
|
||||
unzip tries to restore all meta-information for extracted items
|
||||
that are supplied in the Zip archive (and do not require privi-
|
||||
leges or impose a security risk). By specifying -D, unzip is
|
||||
told to suppress restoration of timestamps for directories
|
||||
explicitly created from Zip archive entries. This option only
|
||||
applies to ports that support setting timestamps for directories
|
||||
(currently ATheOS, BeOS, MacOS, OS/2, Unix, VMS, Win32, for
|
||||
other unzip ports, -D has no effect). The duplicated option -DD
|
||||
forces suppression of timestamp restoration for all extracted
|
||||
entries (files and directories). This option results in setting
|
||||
the timestamps for all extracted entries to the current time.
|
||||
|
||||
On VMS, the default setting for this option is -D for consis-
|
||||
tency with the behaviour of BACKUP: file timestamps are
|
||||
restored, timestamps of extracted directories are left at the
|
||||
current time. To enable restoration of directory timestamps,
|
||||
the negated option --D should be specified. On VMS, the option
|
||||
-D disables timestamp restoration for all extracted Zip archive
|
||||
items. (Here, a single -D on the command line combines with the
|
||||
default -D to do what an explicit -DD does on other systems.)
|
||||
|
||||
-E [MacOS only] display contents of MacOS extra field during
|
||||
restore operation.
|
||||
|
||||
-F [Acorn only] suppress removal of NFS filetype extension from
|
||||
stored filenames.
|
||||
|
||||
-F [non-Acorn systems supporting long filenames with embedded com-
|
||||
mas, and only if compiled with ACORN_FTYPE_NFS defined] trans-
|
||||
late filetype information from ACORN RISC OS extra field blocks
|
||||
into a NFS filetype extension and append it to the names of the
|
||||
extracted files. (When the stored filename appears to already
|
||||
have an appended NFS filetype extension, it is replaced by the
|
||||
info from the extra field.)
|
||||
|
||||
-i [MacOS only] ignore filenames stored in MacOS extra fields.
|
||||
Instead, the most compatible filename stored in the generic part
|
||||
of the entry's header is used.
|
||||
|
||||
-j junk paths. The archive's directory structure is not recreated;
|
||||
all files are deposited in the extraction directory (by default,
|
||||
the current one).
|
||||
|
||||
-J [BeOS only] junk file attributes. The file's BeOS file
|
||||
attributes are not restored, just the file's data.
|
||||
|
||||
-J [MacOS only] ignore MacOS extra fields. All Macintosh specific
|
||||
info is skipped. Data-fork and resource-fork are restored as
|
||||
separate files.
|
||||
|
||||
-K [AtheOS, BeOS, Unix only] retain SUID/SGID/Tacky file
|
||||
attributes. Without this flag, these attribute bits are cleared
|
||||
for security reasons.
|
||||
|
||||
-L convert to lowercase any filename originating on an uppercase-
|
||||
only operating system or file system. (This was unzip's default
|
||||
behavior in releases prior to 5.11; the new default behavior is
|
||||
identical to the old behavior with the -U option, which is now
|
||||
obsolete and will be removed in a future release.) Depending on
|
||||
the archiver, files archived under single-case file systems
|
||||
(VMS, old MS-DOS FAT, etc.) may be stored as all-uppercase
|
||||
names; this can be ugly or inconvenient when extracting to a
|
||||
case-preserving file system such as OS/2 HPFS or a case-sensi-
|
||||
tive one such as under Unix. By default unzip lists and
|
||||
extracts such filenames exactly as they're stored (excepting
|
||||
truncation, conversion of unsupported characters, etc.); this
|
||||
option causes the names of all files from certain systems to be
|
||||
converted to lowercase. The -LL option forces conversion of
|
||||
every filename to lowercase, regardless of the originating file
|
||||
system.
|
||||
|
||||
-M pipe all output through an internal pager similar to the Unix
|
||||
more(1) command. At the end of a screenful of output, unzip
|
||||
pauses with a ``--More--'' prompt; the next screenful may be
|
||||
viewed by pressing the Enter (Return) key or the space bar.
|
||||
unzip can be terminated by pressing the ``q'' key and, on some
|
||||
systems, the Enter/Return key. Unlike Unix more(1), there is no
|
||||
forward-searching or editing capability. Also, unzip doesn't
|
||||
notice if long lines wrap at the edge of the screen, effectively
|
||||
resulting in the printing of two or more lines and the likeli-
|
||||
hood that some text will scroll off the top of the screen before
|
||||
being viewed. On some systems the number of available lines on
|
||||
the screen is not detected, in which case unzip assumes the
|
||||
height is 24 lines.
|
||||
|
||||
-n never overwrite existing files. If a file already exists, skip
|
||||
the extraction of that file without prompting. By default unzip
|
||||
queries before extracting any file that already exists; the user
|
||||
may choose to overwrite only the current file, overwrite all
|
||||
files, skip extraction of the current file, skip extraction of
|
||||
all existing files, or rename the current file.
|
||||
|
||||
-N [Amiga] extract file comments as Amiga filenotes. File comments
|
||||
are created with the -c option of zip(1L), or with the -N option
|
||||
of the Amiga port of zip(1L), which stores filenotes as com-
|
||||
ments.
|
||||
|
||||
-o overwrite existing files without prompting. This is a dangerous
|
||||
option, so use it with care. (It is often used with -f, how-
|
||||
ever, and is the only way to overwrite directory EAs under
|
||||
OS/2.)
|
||||
|
||||
-P password
|
||||
use password to decrypt encrypted zipfile entries (if any).
|
||||
THIS IS INSECURE! Many multi-user operating systems provide
|
||||
ways for any user to see the current command line of any other
|
||||
user; even on stand-alone systems there is always the threat of
|
||||
over-the-shoulder peeking. Storing the plaintext password as
|
||||
part of a command line in an automated script is even worse.
|
||||
Whenever possible, use the non-echoing, interactive prompt to
|
||||
enter passwords. (And where security is truly important, use
|
||||
strong encryption such as Pretty Good Privacy instead of the
|
||||
relatively weak encryption provided by standard zipfile utili-
|
||||
ties.)
|
||||
|
||||
-q perform operations quietly (-qq = even quieter). Ordinarily
|
||||
unzip prints the names of the files it's extracting or testing,
|
||||
the extraction methods, any file or zipfile comments that may be
|
||||
stored in the archive, and possibly a summary when finished with
|
||||
each archive. The -q[q] options suppress the printing of some
|
||||
or all of these messages.
|
||||
|
||||
-s [OS/2, NT, MS-DOS] convert spaces in filenames to underscores.
|
||||
Since all PC operating systems allow spaces in filenames, unzip
|
||||
by default extracts filenames with spaces intact (e.g.,
|
||||
``EA DATA. SF''). This can be awkward, however, since MS-DOS in
|
||||
particular does not gracefully support spaces in filenames.
|
||||
Conversion of spaces to underscores can eliminate the awkward-
|
||||
ness in some cases.
|
||||
|
||||
-S [VMS] convert text files (-a, -aa) into Stream_LF record format,
|
||||
instead of the text-file default, variable-length record format.
|
||||
(Stream_LF is the default record format of VMS unzip. It is
|
||||
applied unless conversion (-a, -aa and/or -b, -bb) is requested
|
||||
or a VMS-specific entry is processed.)
|
||||
|
||||
-U [UNICODE_SUPPORT only] modify or disable UTF-8 handling. When
|
||||
UNICODE_SUPPORT is available, the option -U forces unzip to
|
||||
escape all non-ASCII characters from UTF-8 coded filenames as
|
||||
``#Uxxxx'' (for UCS-2 characters, or ``#Lxxxxxx'' for unicode
|
||||
codepoints needing 3 octets). This option is mainly provided
|
||||
for debugging purpose when the fairly new UTF-8 support is sus-
|
||||
pected to mangle up extracted filenames.
|
||||
|
||||
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.
|
||||
|
||||
[old, obsolete usage] leave filenames uppercase if created under
|
||||
MS-DOS, VMS, etc. See -L above.
|
||||
|
||||
-V retain (VMS) file version numbers. VMS files can be stored with
|
||||
a version number, in the format file.ext;##. By default the
|
||||
``;##'' version numbers are stripped, but this option allows
|
||||
them to be retained. (On file systems that limit filenames to
|
||||
particularly short lengths, the version numbers may be truncated
|
||||
or stripped regardless of this option.)
|
||||
|
||||
-W [only when WILD_STOP_AT_DIR compile-time option enabled] modi-
|
||||
fies the pattern matching routine so that both `?' (single-char
|
||||
wildcard) and `*' (multi-char wildcard) do not match the direc-
|
||||
tory separator character `/'. (The two-character sequence
|
||||
``**'' acts as a multi-char wildcard that includes the directory
|
||||
separator in its matched characters.) Examples:
|
||||
|
||||
"*.c" matches "foo.c" but not "mydir/foo.c"
|
||||
"**.c" matches both "foo.c" and "mydir/foo.c"
|
||||
"*/*.c" matches "bar/foo.c" but not "baz/bar/foo.c"
|
||||
"??*/*" matches "ab/foo" and "abc/foo"
|
||||
but not "a/foo" or "a/b/foo"
|
||||
|
||||
This modified behaviour is equivalent to the pattern matching
|
||||
style used by the shells of some of UnZip's supported target OSs
|
||||
(one example is Acorn RISC OS). This option may not be avail-
|
||||
able on systems where the Zip archive's internal directory sepa-
|
||||
rator character `/' is allowed as regular character in native
|
||||
operating system filenames. (Currently, UnZip uses the same
|
||||
pattern matching rules for both wildcard zipfile specifications
|
||||
and zip entry selection patterns in most ports. For systems
|
||||
allowing `/' as regular filename character, the -W option would
|
||||
not work as expected on a wildcard zipfile specification.)
|
||||
|
||||
-X [VMS, Unix, OS/2, NT, Tandem] restore owner/protection info
|
||||
(UICs and ACL entries) under VMS, or user and group info
|
||||
(UID/GID) under Unix, or access control lists (ACLs) under cer-
|
||||
tain network-enabled versions of OS/2 (Warp Server with IBM LAN
|
||||
Server/Requester 3.0 to 5.0; Warp Connect with IBM Peer 1.0), or
|
||||
security ACLs under Windows NT. In most cases this will require
|
||||
special system privileges, and doubling the option (-XX) under
|
||||
NT instructs unzip to use privileges for extraction; but under
|
||||
Unix, for example, a user who belongs to several groups can
|
||||
restore files owned by any of those groups, as long as the user
|
||||
IDs match his or her own. Note that ordinary file attributes
|
||||
are always restored--this option applies only to optional, extra
|
||||
ownership info available on some operating systems. [NT's
|
||||
access control lists do not appear to be especially compatible
|
||||
with OS/2's, so no attempt is made at cross-platform portability
|
||||
of access privileges. It is not clear under what conditions
|
||||
this would ever be useful anyway.]
|
||||
|
||||
-Y [VMS] treat archived file name endings of ``.nnn'' (where
|
||||
``nnn'' is a decimal number) as if they were VMS version num-
|
||||
bers (``;nnn''). (The default is to treat them as file types.)
|
||||
Example:
|
||||
"a.b.3" -> "a.b;3".
|
||||
|
||||
-$ [MS-DOS, OS/2, NT] restore the volume label if the extraction
|
||||
medium is removable (e.g., a diskette). Doubling the option
|
||||
(-$$) allows fixed media (hard disks) to be labelled as well.
|
||||
By default, volume labels are ignored.
|
||||
|
||||
-/ extensions
|
||||
[Acorn only] overrides the extension list supplied by Unzip$Ext
|
||||
environment variable. During extraction, filename extensions
|
||||
that match one of the items in this extension list are swapped
|
||||
in front of the base name of the extracted file.
|
||||
|
||||
-: [all but Acorn, VM/CMS, MVS, Tandem] allows to extract archive
|
||||
members into locations outside of the current `` extraction root
|
||||
folder''. For security reasons, unzip normally removes ``parent
|
||||
dir'' path components (``../'') from the names of extracted
|
||||
file. This safety feature (new for version 5.50) prevents unzip
|
||||
from accidentally writing files to ``sensitive'' areas outside
|
||||
the active extraction folder tree head. The -: option lets
|
||||
unzip switch back to its previous, more liberal behaviour, to
|
||||
allow exact extraction of (older) archives that used ``../''
|
||||
components to create multiple directory trees at the level of
|
||||
the current extraction folder. This option does not enable
|
||||
writing explicitly to the root directory (``/''). To achieve
|
||||
this, it is necessary to set the extraction target folder to
|
||||
root (e.g. -d / ). However, when the -: option is specified, it
|
||||
is still possible to implicitly write to the root directory by
|
||||
specifying enough ``../'' path components within the zip
|
||||
archive. Use this option with extreme caution.
|
||||
|
||||
-^ [Unix only] allow control characters in names of extracted ZIP
|
||||
archive entries. On Unix, a file name may contain any (8-bit)
|
||||
character code with the two exception '/' (directory delimiter)
|
||||
and NUL (0x00, the C string termination indicator), unless the
|
||||
specific file system has more restrictive conventions. Gener-
|
||||
ally, this allows to embed ASCII control characters (or even
|
||||
sophisticated control sequences) in file names, at least on
|
||||
'native' Unix file systems. However, it may be highly suspi-
|
||||
cious to make use of this Unix "feature". Embedded control
|
||||
characters in file names might have nasty side effects when dis-
|
||||
played on screen by some listing code without sufficient filter-
|
||||
ing. And, for ordinary users, it may be difficult to handle
|
||||
such file names (e.g. when trying to specify it for open, copy,
|
||||
move, or delete operations). Therefore, unzip applies a filter
|
||||
by default that removes potentially dangerous control characters
|
||||
from the extracted file names. The -^ option allows to override
|
||||
this filter in the rare case that embedded filename control
|
||||
characters are to be intentionally restored.
|
||||
|
||||
-2 [VMS] force unconditionally conversion of file names to
|
||||
ODS2-compatible names. The default is to exploit the destina-
|
||||
tion file system, preserving case and extended file name charac-
|
||||
ters on an ODS5 destination file system; and applying the
|
||||
ODS2-compatibility file name filtering on an ODS2 destination
|
||||
file system.
|
||||
|
||||
ENVIRONMENT OPTIONS
|
||||
unzip's default behavior may be modified via options placed in an envi-
|
||||
ronment variable. This can be done with any option, but it is probably
|
||||
most useful with the -a, -L, -C, -q, -o, or -n modifiers: make unzip
|
||||
auto-convert text files by default, make it convert filenames from
|
||||
uppercase systems to lowercase, make it match names case-insensitively,
|
||||
make it quieter, or make it always overwrite or never overwrite files
|
||||
as it extracts them. For example, to make unzip act as quietly as pos-
|
||||
sible, only reporting errors, one would use one of the following com-
|
||||
mands:
|
||||
|
||||
Unix Bourne shell:
|
||||
UNZIP=-qq; export UNZIP
|
||||
|
||||
Unix C shell:
|
||||
setenv UNZIP -qq
|
||||
|
||||
OS/2 or MS-DOS:
|
||||
set UNZIP=-qq
|
||||
|
||||
VMS (quotes for lowercase):
|
||||
define UNZIP_OPTS "-qq"
|
||||
|
||||
Environment options are, in effect, considered to be just like any
|
||||
other command-line options, except that they are effectively the first
|
||||
options on the command line. To override an environment option, one
|
||||
may use the ``minus operator'' to remove it. For instance, to override
|
||||
one of the quiet-flags in the example above, use the command
|
||||
|
||||
unzip --q[other options] zipfile
|
||||
|
||||
The first hyphen is the normal switch character, and the second is a
|
||||
minus sign, acting on the q option. Thus the effect here is to cancel
|
||||
one quantum of quietness. To cancel both quiet flags, two (or more)
|
||||
minuses may be used:
|
||||
|
||||
unzip -t--q zipfile
|
||||
unzip ---qt zipfile
|
||||
|
||||
(the two are equivalent). This may seem awkward or confusing, but it
|
||||
is reasonably intuitive: just ignore the first hyphen and go from
|
||||
there. It is also consistent with the behavior of Unix nice(1).
|
||||
|
||||
As suggested by the examples above, the default variable names are
|
||||
UNZIP_OPTS for VMS (where the symbol used to install unzip as a foreign
|
||||
command would otherwise be confused with the environment variable), and
|
||||
UNZIP for all other operating systems. For compatibility with zip(1L),
|
||||
UNZIPOPT is also accepted (don't ask). If both UNZIP and UNZIPOPT are
|
||||
defined, however, UNZIP takes precedence. unzip's diagnostic option
|
||||
(-v with no zipfile name) can be used to check the values of all four
|
||||
possible unzip and zipinfo environment variables.
|
||||
|
||||
The timezone variable (TZ) should be set according to the local time-
|
||||
zone in order for the -f and -u to operate correctly. See the descrip-
|
||||
tion of -f above for details. This variable may also be necessary to
|
||||
get timestamps of extracted files to be set correctly. The WIN32
|
||||
(Win9x/ME/NT4/2K/XP/2K3) port of unzip gets the timezone configuration
|
||||
from the registry, assuming it is correctly set in the Control Panel.
|
||||
The TZ variable is ignored for this port.
|
||||
|
||||
DECRYPTION
|
||||
Encrypted archives are fully supported by Info-ZIP software, but due to
|
||||
United States export restrictions, de-/encryption support might be dis-
|
||||
abled in your compiled binary. However, since spring 2000, US export
|
||||
restrictions have been liberated, and our source archives do now
|
||||
include full crypt code. In case you need binary distributions with
|
||||
crypt support enabled, see the file ``WHERE'' in any Info-ZIP source or
|
||||
binary distribution for locations both inside and outside the US.
|
||||
|
||||
Some compiled versions of unzip may not support decryption. To check a
|
||||
version for crypt support, either attempt to test or extract an
|
||||
encrypted archive, or else check unzip's diagnostic screen (see the -v
|
||||
option above) for ``[decryption]'' as one of the special compilation
|
||||
options.
|
||||
|
||||
As noted above, the -P option may be used to supply a password on the
|
||||
command line, but at a cost in security. The preferred decryption
|
||||
method is simply to extract normally; if a zipfile member is encrypted,
|
||||
unzip will prompt for the password without echoing what is typed.
|
||||
unzip continues to use the same password as long as it appears to be
|
||||
valid, by testing a 12-byte header on each file. The correct password
|
||||
will always check out against the header, but there is a 1-in-256
|
||||
chance that an incorrect password will as well. (This is a security
|
||||
feature of the PKWARE zipfile format; it helps prevent brute-force
|
||||
attacks that might otherwise gain a large speed advantage by testing
|
||||
only the header.) In the case that an incorrect password is given but
|
||||
it passes the header test anyway, either an incorrect CRC will be gen-
|
||||
erated for the extracted data or else unzip will fail during the
|
||||
extraction because the ``decrypted'' bytes do not constitute a valid
|
||||
compressed data stream.
|
||||
|
||||
If the first password fails the header check on some file, unzip will
|
||||
prompt for another password, and so on until all files are extracted.
|
||||
If a password is not known, entering a null password (that is, just a
|
||||
carriage return or ``Enter'') is taken as a signal to skip all further
|
||||
prompting. Only unencrypted files in the archive(s) will thereafter be
|
||||
extracted. (In fact, that's not quite true; older versions of zip(1L)
|
||||
and zipcloak(1L) allowed null passwords, so unzip checks each encrypted
|
||||
file to see if the null password works. This may result in ``false
|
||||
positives'' and extraction errors, as noted above.)
|
||||
|
||||
Archives encrypted with 8-bit passwords (for example, passwords with
|
||||
accented European characters) may not be portable across systems and/or
|
||||
other archivers. This problem stems from the use of multiple encoding
|
||||
methods for such characters, including Latin-1 (ISO 8859-1) and OEM
|
||||
code page 850. DOS PKZIP 2.04g uses the OEM code page; Windows PKZIP
|
||||
2.50 uses Latin-1 (and is therefore incompatible with DOS PKZIP); Info-
|
||||
ZIP uses the OEM code page on DOS, OS/2 and Win3.x ports but ISO coding
|
||||
(Latin-1 etc.) everywhere else; and Nico Mak's WinZip 6.x does not
|
||||
allow 8-bit passwords at all. UnZip 5.3 (or newer) attempts to use the
|
||||
default character set first (e.g., Latin-1), followed by the alternate
|
||||
one (e.g., OEM code page) to test passwords. On EBCDIC systems, if
|
||||
both of these fail, EBCDIC encoding will be tested as a last resort.
|
||||
(EBCDIC is not tested on non-EBCDIC systems, because there are no known
|
||||
archivers that encrypt using EBCDIC encoding.) ISO character encodings
|
||||
other than Latin-1 are not supported. The new addition of (partially)
|
||||
Unicode (resp. UTF-8) support in UnZip 6.0 has not yet been adapted to
|
||||
the encryption password handling in unzip. On systems that use UTF-8
|
||||
as native character encoding, unzip simply tries decryption with the
|
||||
native UTF-8 encoded password; the built-in attempts to check the pass-
|
||||
word in translated encoding have not yet been adapted for UTF-8 support
|
||||
and will consequently fail.
|
||||
|
||||
EXAMPLES
|
||||
To use unzip to extract all members of the archive letters.zip into the
|
||||
current directory and subdirectories below it, creating any subdirecto-
|
||||
ries as necessary:
|
||||
|
||||
unzip letters
|
||||
|
||||
To extract all members of letters.zip into the current directory only:
|
||||
|
||||
unzip -j letters
|
||||
|
||||
To test letters.zip, printing only a summary message indicating whether
|
||||
the archive is OK or not:
|
||||
|
||||
unzip -tq letters
|
||||
|
||||
To test all zipfiles in the current directory, printing only the sum-
|
||||
maries:
|
||||
|
||||
unzip -tq \*.zip
|
||||
|
||||
(The backslash before the asterisk is only required if the shell
|
||||
expands wildcards, as in Unix; double quotes could have been used
|
||||
instead, as in the source examples below.) To extract to standard out-
|
||||
put all members of letters.zip whose names end in .tex, auto-converting
|
||||
to the local end-of-line convention and piping the output into more(1):
|
||||
|
||||
unzip -ca letters \*.tex | more
|
||||
|
||||
To extract the binary file paper1.dvi to standard output and pipe it to
|
||||
a printing program:
|
||||
|
||||
unzip -p articles paper1.dvi | dvips
|
||||
|
||||
To extract all FORTRAN and C source files--*.f, *.c, *.h, and Make-
|
||||
file--into the /tmp directory:
|
||||
|
||||
unzip source.zip "*.[fch]" Makefile -d /tmp
|
||||
|
||||
(the double quotes are necessary only in Unix and only if globbing is
|
||||
turned on). To extract all FORTRAN and C source files, regardless of
|
||||
case (e.g., both *.c and *.C, and any makefile, Makefile, MAKEFILE or
|
||||
similar):
|
||||
|
||||
unzip -C source.zip "*.[fch]" makefile -d /tmp
|
||||
|
||||
To extract any such files but convert any uppercase MS-DOS or VMS names
|
||||
to lowercase and convert the line-endings of all of the files to the
|
||||
local standard (without respect to any files that might be marked
|
||||
``binary''):
|
||||
|
||||
unzip -aaCL source.zip "*.[fch]" makefile -d /tmp
|
||||
|
||||
To extract only newer versions of the files already in the current
|
||||
directory, without querying (NOTE: be careful of unzipping in one
|
||||
timezone a zipfile created in another--ZIP archives other than those
|
||||
created by Zip 2.1 or later contain no timezone information, and a
|
||||
``newer'' file from an eastern timezone may, in fact, be older):
|
||||
|
||||
unzip -fo sources
|
||||
|
||||
To extract newer versions of the files already in the current directory
|
||||
and to create any files not already there (same caveat as previous
|
||||
example):
|
||||
|
||||
unzip -uo sources
|
||||
|
||||
To display a diagnostic screen showing which unzip and zipinfo options
|
||||
are stored in environment variables, whether decryption support was
|
||||
compiled in, the compiler with which unzip was compiled, etc.:
|
||||
|
||||
unzip -v
|
||||
|
||||
In the last five examples, assume that UNZIP or UNZIP_OPTS is set to
|
||||
-q. To do a singly quiet listing:
|
||||
|
||||
unzip -l file.zip
|
||||
|
||||
To do a doubly quiet listing:
|
||||
|
||||
unzip -ql file.zip
|
||||
|
||||
(Note that the ``.zip'' is generally not necessary.) To do a standard
|
||||
listing:
|
||||
|
||||
unzip --ql file.zip
|
||||
or
|
||||
unzip -l-q file.zip
|
||||
or
|
||||
unzip -l--q file.zip
|
||||
(Extra minuses in options don't hurt.)
|
||||
|
||||
TIPS
|
||||
The current maintainer, being a lazy sort, finds it very useful to
|
||||
define a pair of aliases: tt for ``unzip -tq'' and ii for ``unzip -Z''
|
||||
(or ``zipinfo''). One may then simply type ``tt zipfile'' to test an
|
||||
archive, something that is worth making a habit of doing. With luck
|
||||
unzip will report ``No errors detected in compressed data of zip-
|
||||
file.zip,'' after which one may breathe a sigh of relief.
|
||||
|
||||
The maintainer also finds it useful to set the UNZIP environment vari-
|
||||
able to ``-aL'' and is tempted to add ``-C'' as well. His ZIPINFO
|
||||
variable is set to ``-z''.
|
||||
|
||||
DIAGNOSTICS
|
||||
The exit status (or error level) approximates the exit codes defined by
|
||||
PKWARE and takes on the following values, except under VMS:
|
||||
|
||||
0 normal; no errors or warnings detected.
|
||||
|
||||
1 one or more warning errors were encountered, but process-
|
||||
ing completed successfully anyway. This includes zip-
|
||||
files where one or more files was skipped due to unsup-
|
||||
ported compression method or encryption with an unknown
|
||||
password.
|
||||
|
||||
2 a generic error in the zipfile format was detected. Pro-
|
||||
cessing may have completed successfully anyway; some bro-
|
||||
ken zipfiles created by other archivers have simple work-
|
||||
arounds.
|
||||
|
||||
3 a severe error in the zipfile format was detected. Pro-
|
||||
cessing probably failed immediately.
|
||||
|
||||
4 unzip was unable to allocate memory for one or more
|
||||
buffers during program initialization.
|
||||
|
||||
5 unzip was unable to allocate memory or unable to obtain a
|
||||
tty to read the decryption password(s).
|
||||
|
||||
6 unzip was unable to allocate memory during decompression
|
||||
to disk.
|
||||
|
||||
7 unzip was unable to allocate memory during in-memory
|
||||
decompression.
|
||||
|
||||
8 [currently not used]
|
||||
|
||||
9 the specified zipfiles were not found.
|
||||
|
||||
10 invalid options were specified on the command line.
|
||||
|
||||
11 no matching files were found.
|
||||
|
||||
50 the disk is (or was) full during extraction.
|
||||
|
||||
51 the end of the ZIP archive was encountered prematurely.
|
||||
|
||||
80 the user aborted unzip prematurely with control-C (or
|
||||
similar)
|
||||
|
||||
81 testing or extraction of one or more files failed due to
|
||||
unsupported compression methods or unsupported decryp-
|
||||
tion.
|
||||
|
||||
82 no files were found due to bad decryption password(s).
|
||||
(If even one file is successfully processed, however, the
|
||||
exit status is 1.)
|
||||
|
||||
VMS interprets standard Unix (or PC) return values as other, scarier-
|
||||
looking things, so unzip instead maps them into VMS-style status codes.
|
||||
The current mapping is as follows: 1 (success) for normal exit,
|
||||
0x7fff0001 for warning errors, and (0x7fff000? + 16*nor-
|
||||
mal_unzip_exit_status) for all other errors, where the `?' is 2 (error)
|
||||
for unzip values 2, 9-11 and 80-82, and 4 (fatal error) for the remain-
|
||||
ing ones (3-8, 50, 51). In addition, there is a compilation option to
|
||||
expand upon this behavior: defining RETURN_CODES results in a human-
|
||||
readable explanation of what the error status means.
|
||||
|
||||
BUGS
|
||||
Multi-part archives are not yet supported, except in conjunction with
|
||||
zip. (All parts must be concatenated together in order, and then ``zip
|
||||
-F'' (for zip 2.x) or ``zip -FF'' (for zip 3.x) must be performed on
|
||||
the concatenated archive in order to ``fix'' it. Also, zip 3.0 and
|
||||
later can combine multi-part (split) archives into a combined single-
|
||||
file archive using ``zip -s- inarchive -O outarchive''. See the zip 3
|
||||
manual page for more information.) This will definitely be corrected
|
||||
in the next major release.
|
||||
|
||||
Archives read from standard input are not yet supported, except with
|
||||
funzip (and then only the first member of the archive can be
|
||||
extracted).
|
||||
|
||||
Archives encrypted with 8-bit passwords (e.g., passwords with accented
|
||||
European characters) may not be portable across systems and/or other
|
||||
archivers. See the discussion in DECRYPTION above.
|
||||
|
||||
unzip's -M (``more'') option tries to take into account automatic wrap-
|
||||
ping of long lines. However, the code may fail to detect the correct
|
||||
wrapping locations. First, TAB characters (and similar control
|
||||
sequences) are not taken into account, they are handled as ordinary
|
||||
printable characters. Second, depending on the actual system / OS
|
||||
port, unzip may not detect the true screen geometry but rather rely on
|
||||
"commonly used" default dimensions. The correct handling of tabs would
|
||||
require the implementation of a query for the actual tabulator setup on
|
||||
the output console.
|
||||
|
||||
Dates, times and permissions of stored directories are not restored
|
||||
except under Unix. (On Windows NT and successors, timestamps are now
|
||||
restored.)
|
||||
|
||||
[MS-DOS] When extracting or testing files from an archive on a defec-
|
||||
tive floppy diskette, if the ``Fail'' option is chosen from DOS's
|
||||
``Abort, Retry, Fail?'' message, older versions of unzip may hang the
|
||||
system, requiring a reboot. This problem appears to be fixed, but con-
|
||||
trol-C (or control-Break) can still be used to terminate unzip.
|
||||
|
||||
Under DEC Ultrix, unzip would sometimes fail on long zipfiles (bad CRC,
|
||||
not always reproducible). This was apparently due either to a hardware
|
||||
bug (cache memory) or an operating system bug (improper handling of
|
||||
page faults?). Since Ultrix has been abandoned in favor of Digital
|
||||
Unix (OSF/1), this may not be an issue anymore.
|
||||
|
||||
[Unix] Unix special files such as FIFO buffers (named pipes), block
|
||||
devices and character devices are not restored even if they are somehow
|
||||
represented in the zipfile, nor are hard-linked files relinked. Basi-
|
||||
cally the only file types restored by unzip are regular files, directo-
|
||||
ries and symbolic (soft) links.
|
||||
|
||||
[OS/2] Extended attributes for existing directories are only updated if
|
||||
the -o (``overwrite all'') option is given. This is a limitation of
|
||||
the operating system; because directories only have a creation time
|
||||
associated with them, unzip has no way to determine whether the stored
|
||||
attributes are newer or older than those on disk. In practice this may
|
||||
mean a two-pass approach is required: first unpack the archive nor-
|
||||
mally (with or without freshening/updating existing files), then
|
||||
overwrite just the directory entries (e.g., ``unzip -o foo */'').
|
||||
|
||||
[VMS] When extracting to another directory, only the [.foo] syntax is
|
||||
accepted for the -d option; the simple Unix foo syntax is silently
|
||||
ignored (as is the less common VMS foo.dir syntax).
|
||||
|
||||
[VMS] When the file being extracted already exists, unzip's query only
|
||||
allows skipping, overwriting or renaming; there should additionally be
|
||||
a choice for creating a new version of the file. In fact, the ``over-
|
||||
write'' choice does create a new version; the old version is not over-
|
||||
written or deleted.
|
||||
|
||||
SEE ALSO
|
||||
funzip(1L), zip(1L), zipcloak(1L), zipgrep(1L), zipinfo(1L), zip-
|
||||
note(1L), zipsplit(1L)
|
||||
|
||||
URL
|
||||
The Info-ZIP home page is currently at
|
||||
http://www.info-zip.org/pub/infozip/
|
||||
or
|
||||
ftp://ftp.info-zip.org/pub/infozip/ .
|
||||
|
||||
AUTHORS
|
||||
The primary Info-ZIP authors (current semi-active members of the Zip-
|
||||
Bugs workgroup) are: Ed Gordon (Zip, general maintenance, shared code,
|
||||
Zip64, Win32, Unix, Unicode); Christian Spieler (UnZip maintenance
|
||||
coordination, VMS, MS-DOS, Win32, shared code, general Zip and UnZip
|
||||
integration and optimization); Onno van der Linden (Zip); Mike White
|
||||
(Win32, Windows GUI, Windows DLLs); Kai Uwe Rommel (OS/2, Win32);
|
||||
Steven M. Schweda (VMS, Unix, support of new features); Paul Kienitz
|
||||
(Amiga, Win32, Unicode); Chris Herborth (BeOS, QNX, Atari); Jonathan
|
||||
Hudson (SMS/QDOS); Sergio Monesi (Acorn RISC OS); Harald Denker (Atari,
|
||||
MVS); John Bush (Solaris, Amiga); Hunter Goatley (VMS, Info-ZIP Site
|
||||
maintenance); Steve Salisbury (Win32); Steve Miller (Windows CE GUI),
|
||||
Johnny Lee (MS-DOS, Win32, Zip64); and Dave Smith (Tandem NSK).
|
||||
|
||||
The following people were former members of the Info-ZIP development
|
||||
group and provided major contributions to key parts of the current
|
||||
code: Greg ``Cave Newt'' Roelofs (UnZip, unshrink decompression); Jean-
|
||||
loup Gailly (deflate compression); Mark Adler (inflate decompression,
|
||||
fUnZip).
|
||||
|
||||
The author of the original unzip code upon which Info-ZIP's was based
|
||||
is Samuel H. Smith; Carl Mascott did the first Unix port; and David P.
|
||||
Kirschbaum organized and led Info-ZIP in its early days with Keith
|
||||
Petersen hosting the original mailing list at WSMR-SimTel20. The full
|
||||
list of contributors to UnZip has grown quite large; please refer to
|
||||
the CONTRIBS file in the UnZip source distribution for a relatively
|
||||
complete version.
|
||||
|
||||
VERSIONS
|
||||
v1.2 15 Mar 89 Samuel H. Smith
|
||||
v2.0 9 Sep 89 Samuel H. Smith
|
||||
v2.x fall 1989 many Usenet contributors
|
||||
v3.0 1 May 90 Info-ZIP (DPK, consolidator)
|
||||
v3.1 15 Aug 90 Info-ZIP (DPK, consolidator)
|
||||
v4.0 1 Dec 90 Info-ZIP (GRR, maintainer)
|
||||
v4.1 12 May 91 Info-ZIP
|
||||
v4.2 20 Mar 92 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.0 21 Aug 92 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.01 15 Jan 93 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.1 7 Feb 94 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.11 2 Aug 94 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.12 28 Aug 94 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.2 30 Apr 96 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.3 22 Apr 97 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.31 31 May 97 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.32 3 Nov 97 Info-ZIP (Zip-Bugs subgroup, GRR)
|
||||
v5.4 28 Nov 98 Info-ZIP (Zip-Bugs subgroup, SPC)
|
||||
v5.41 16 Apr 00 Info-ZIP (Zip-Bugs subgroup, SPC)
|
||||
v5.42 14 Jan 01 Info-ZIP (Zip-Bugs subgroup, SPC)
|
||||
v5.5 17 Feb 02 Info-ZIP (Zip-Bugs subgroup, SPC)
|
||||
v5.51 22 May 04 Info-ZIP (Zip-Bugs subgroup, SPC)
|
||||
v5.52 28 Feb 05 Info-ZIP (Zip-Bugs subgroup, SPC)
|
||||
v6.0 20 Apr 09 Info-ZIP (Zip-Bugs subgroup, SPC)
|
||||
|
||||
Info-ZIP 20 April 2009 (v6.0) UNZIP(1L)
|
||||
279
OGP64/usr/share/doc/unzip/unzipsfx.txt
Normal file
279
OGP64/usr/share/doc/unzip/unzipsfx.txt
Normal file
|
|
@ -0,0 +1,279 @@
|
|||
UNZIPSFX(1L) UNZIPSFX(1L)
|
||||
|
||||
NAME
|
||||
unzipsfx - self-extracting stub for prepending to ZIP archives
|
||||
|
||||
SYNOPSIS
|
||||
<name of unzipsfx+archive combo> [-cfptuz[ajnoqsCLV$]] [file(s) ...
|
||||
[-x xfile(s) ...]]
|
||||
|
||||
DESCRIPTION
|
||||
unzipsfx is a modified version of unzip(1L) designed to be prepended to
|
||||
existing ZIP archives in order to form self-extracting archives.
|
||||
Instead of taking its first non-flag argument to be the zipfile(s) to
|
||||
be extracted, unzipsfx seeks itself under the name by which it was
|
||||
invoked and tests or extracts the contents of the appended archive.
|
||||
Because the executable stub adds bulk to the archive (the whole purpose
|
||||
of which is to be as small as possible), a number of the less-vital
|
||||
capabilities in regular unzip have been removed. Among these are the
|
||||
usage (or help) screen, the listing and diagnostic functions (-l and
|
||||
-v), the ability to decompress older compression formats (the
|
||||
``reduce,'' ``shrink'' and ``implode'' methods). The ability to
|
||||
extract to a directory other than the current one can be selected as a
|
||||
compile-time option, which is now enabled by default since UnZipSFX
|
||||
version 5.5. Similarly, decryption is supported as a compile-time
|
||||
option but should be avoided unless the attached archive contains
|
||||
encrypted files. Starting with release 5.5, another compile-time option
|
||||
adds a simple ``run command after extraction'' feature. This feature
|
||||
is currently incompatible with the ``extract to different directory''
|
||||
feature and remains disabled by default.
|
||||
|
||||
Note that self-extracting archives made with unzipsfx are no more (or
|
||||
less) portable across different operating systems than is the unzip
|
||||
executable itself. In general a self-extracting archive made on a par-
|
||||
ticular Unix system, for example, will only self-extract under the same
|
||||
flavor of Unix. Regular unzip may still be used to extract the embed-
|
||||
ded archive as with any normal zipfile, although it will generate a
|
||||
harmless warning about extra bytes at the beginning of the zipfile.
|
||||
Despite this, however, the self-extracting archive is technically not a
|
||||
valid ZIP archive, and PKUNZIP may be unable to test or extract it.
|
||||
This limitation is due to the simplistic manner in which the archive is
|
||||
created; the internal directory structure is not updated to reflect the
|
||||
extra bytes prepended to the original zipfile.
|
||||
|
||||
ARGUMENTS
|
||||
[file(s)]
|
||||
An optional list of archive members to be processed. Regular
|
||||
expressions (wildcards) similar to those in Unix egrep(1) may be
|
||||
used to match multiple members. These wildcards 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 an exclamation point or a
|
||||
caret (`!' or `^') follows the left bracket, then the
|
||||
range of characters within the brackets is complemented
|
||||
(that is, anything except the characters inside the
|
||||
brackets is considered a match).
|
||||
|
||||
(Be sure to quote any character that might otherwise be inter-
|
||||
preted or modified by the operating system, particularly under
|
||||
Unix and VMS.)
|
||||
|
||||
[-x xfile(s)]
|
||||
An optional list of archive members to be excluded from process-
|
||||
ing. Since wildcard characters match directory separators
|
||||
(`/'), this option may be used to exclude any files that are in
|
||||
subdirectories. For example, ``foosfx *.[ch] -x */*'' would
|
||||
extract all C source files in the main directory, but none in
|
||||
any subdirectories. Without the -x option, all C source files
|
||||
in all directories within the zipfile would be extracted.
|
||||
|
||||
If unzipsfx is compiled with SFX_EXDIR defined, the following option is
|
||||
also enabled:
|
||||
|
||||
[-d exdir]
|
||||
An optional directory to which to extract files. By default,
|
||||
all files and subdirectories are recreated in the current direc-
|
||||
tory; the -d option allows extraction in an arbitrary directory
|
||||
(always assuming one has permission to write to the directory).
|
||||
The option and directory may be concatenated without any white
|
||||
space between them, but note that this may cause normal shell
|
||||
behavior to be suppressed. In particular, ``-d ~'' (tilde) is
|
||||
expanded by Unix C shells into the name of the user's home
|
||||
directory, but ``-d~'' is treated as a literal subdirectory
|
||||
``~'' of the current directory.
|
||||
|
||||
OPTIONS
|
||||
unzipsfx supports the following unzip(1L) options: -c and -p (extract
|
||||
to standard output/screen), -f and -u (freshen and update existing
|
||||
files upon extraction), -t (test archive) and -z (print archive com-
|
||||
ment). All normal listing options (-l, -v and -Z) have been removed,
|
||||
but the testing option (-t) may be used as a ``poor man's'' listing.
|
||||
Alternatively, those creating self-extracting archives may wish to
|
||||
include a short listing in the zipfile comment.
|
||||
|
||||
See unzip(1L) for a more complete description of these options.
|
||||
|
||||
MODIFIERS
|
||||
unzipsfx currently supports all unzip(1L) modifiers: -a (convert text
|
||||
files), -n (never overwrite), -o (overwrite without prompting), -q
|
||||
(operate quietly), -C (match names case-insensitively), -L (convert
|
||||
uppercase-OS names to lowercase), -j (junk paths) and -V (retain ver-
|
||||
sion numbers); plus the following operating-system specific options:
|
||||
-X (restore VMS owner/protection info), -s (convert spaces in filenames
|
||||
to underscores [DOS, OS/2, NT]) and -$ (restore volume label [DOS,
|
||||
OS/2, NT, Amiga]).
|
||||
|
||||
(Support for regular ASCII text-conversion may be removed in future
|
||||
versions, since it is simple enough for the archive's creator to ensure
|
||||
that text files have the appropriate format for the local OS. EBCDIC
|
||||
conversion will of course continue to be supported since the zipfile
|
||||
format implies ASCII storage of text files.)
|
||||
|
||||
See unzip(1L) for a more complete description of these modifiers.
|
||||
|
||||
ENVIRONMENT OPTIONS
|
||||
unzipsfx uses the same environment variables as unzip(1L) does,
|
||||
although this is likely to be an issue only for the person creating and
|
||||
testing the self-extracting archive. See unzip(1L) for details.
|
||||
|
||||
DECRYPTION
|
||||
Decryption is supported exactly as in unzip(1L); that is, interactively
|
||||
with a non-echoing prompt for the password(s). See unzip(1L) for
|
||||
details. Once again, note that if the archive has no encrypted files
|
||||
there is no reason to use a version of unzipsfx with decryption sup-
|
||||
port; that only adds to the size of the archive.
|
||||
|
||||
AUTORUN COMMAND
|
||||
When unzipsfx was compiled with CHEAP_SFX_AUTORUN defined, a simple
|
||||
``command autorun'' feature is supported. You may enter a command into
|
||||
the Zip archive comment, using the following format:
|
||||
|
||||
$AUTORUN$>[command line string]
|
||||
|
||||
When unzipsfx recognizes the ``$AUTORUN$>'' token at the beginning of
|
||||
the Zip archive comment, the remainder of the first line of the comment
|
||||
(until the first newline character) is passed as a shell command to the
|
||||
operating system using the C rtl ``system'' function. Before executing
|
||||
the command, unzipsfx displays the command on the console and prompts
|
||||
the user for confirmation. When the user has switched off prompting by
|
||||
specifying the -q option, autorun commands are never executed.
|
||||
|
||||
In case the archive comment contains additional lines of text, the
|
||||
remainder of the archive comment following the first line is displayed
|
||||
normally, unless quiet operation was requested by supplying a -q
|
||||
option.
|
||||
|
||||
EXAMPLES
|
||||
To create a self-extracting archive letters from a regular zipfile let-
|
||||
ters.zip and change the new archive's permissions to be world-exe-
|
||||
cutable under Unix:
|
||||
|
||||
cat unzipsfx letters.zip > letters
|
||||
chmod 755 letters
|
||||
zip -A letters
|
||||
|
||||
To create the same archive under MS-DOS, OS/2 or NT (note the use of
|
||||
the /b [binary] option to the copy command):
|
||||
|
||||
copy /b unzipsfx.exe+letters.zip letters.exe
|
||||
zip -A letters.exe
|
||||
|
||||
Under VMS:
|
||||
|
||||
copy unzipsfx.exe,letters.zip letters.exe
|
||||
letters == "$currentdisk:[currentdir]letters.exe"
|
||||
zip -A letters.exe
|
||||
|
||||
(The VMS append command may also be used. The second command installs
|
||||
the new program as a ``foreign command'' capable of taking arguments.
|
||||
The third line assumes that Zip is already installed as a foreign com-
|
||||
mand.) Under AmigaDOS:
|
||||
|
||||
MakeSFX letters letters.zip UnZipSFX
|
||||
|
||||
(MakeSFX is included with the UnZip source distribution and with Amiga
|
||||
binary distributions. ``zip -A'' doesn't work on Amiga self-extracting
|
||||
archives.) To test (or list) the newly created self-extracting
|
||||
archive:
|
||||
|
||||
letters -t
|
||||
|
||||
To test letters quietly, printing only a summary message indicating
|
||||
whether the archive is OK or not:
|
||||
|
||||
letters -tqq
|
||||
|
||||
To extract the complete contents into the current directory, recreating
|
||||
all files and subdirectories as necessary:
|
||||
|
||||
letters
|
||||
|
||||
To extract all *.txt files (in Unix quote the `*'):
|
||||
|
||||
letters *.txt
|
||||
|
||||
To extract everything except the *.txt files:
|
||||
|
||||
letters -x *.txt
|
||||
|
||||
To extract only the README file to standard output (the screen):
|
||||
|
||||
letters -c README
|
||||
|
||||
To print only the zipfile comment:
|
||||
|
||||
letters -z
|
||||
|
||||
LIMITATIONS
|
||||
The principle and fundamental limitation of unzipsfx is that it is not
|
||||
portable across architectures or operating systems, and therefore nei-
|
||||
ther are the resulting archives. For some architectures there is lim-
|
||||
ited portability, however (e.g., between some flavors of Intel-based
|
||||
Unix).
|
||||
|
||||
Another problem with the current implementation is that any archive
|
||||
with ``junk'' prepended to the beginning technically is no longer a
|
||||
zipfile (unless zip(1) is used to adjust the zipfile offsets appropri-
|
||||
ately, as noted above). unzip(1) takes note of the prepended bytes and
|
||||
ignores them since some file-transfer protocols, notably MacBinary, are
|
||||
also known to prepend junk. But PKWARE's archiver suite may not be
|
||||
able to deal with the modified archive unless its offsets have been
|
||||
adjusted.
|
||||
|
||||
unzipsfx has no knowledge of the user's PATH, so in general an archive
|
||||
must either be in the current directory when it is invoked, or else a
|
||||
full or relative path must be given. If a user attempts to extract the
|
||||
archive from a directory in the PATH other than the current one,
|
||||
unzipsfx will print a warning to the effect, ``can't find myself.''
|
||||
This is always true under Unix and may be true in some cases under MS-
|
||||
DOS, depending on the compiler used (Microsoft C fully qualifies the
|
||||
program name, but other compilers may not). Under OS/2 and NT there
|
||||
are operating-system calls available that provide the full path name,
|
||||
so the archive may be invoked from anywhere in the user's path. The
|
||||
situation is not known for AmigaDOS, Atari TOS, MacOS, etc.
|
||||
|
||||
As noted above, a number of the normal unzip(1L) functions have been
|
||||
removed in order to make unzipsfx smaller: usage and diagnostic info,
|
||||
listing functions and extraction to other directories. Also, only
|
||||
stored and deflated files are supported. The latter limitation is
|
||||
mainly relevant to those who create SFX archives, however.
|
||||
|
||||
VMS users must know how to set up self-extracting archives as foreign
|
||||
commands in order to use any of unzipsfx's options. This is not neces-
|
||||
sary for simple extraction, but the command to do so then becomes,
|
||||
e.g., ``run letters'' (to continue the examples given above).
|
||||
|
||||
unzipsfx on the Amiga requires the use of a special program, MakeSFX,
|
||||
in order to create working self-extracting archives; simple concatena-
|
||||
tion does not work. (For technically oriented users, the attached
|
||||
archive is defined as a ``debug hunk.'') There may be compatibility
|
||||
problems between the ROM levels of older Amigas and newer ones.
|
||||
|
||||
All current bugs in unzip(1L) exist in unzipsfx as well.
|
||||
|
||||
DIAGNOSTICS
|
||||
unzipsfx's exit status (error level) is identical to that of unzip(1L);
|
||||
see the corresponding man page.
|
||||
|
||||
SEE ALSO
|
||||
funzip(1L), unzip(1L), zip(1L), zipcloak(1L), zipgrep(1L), zipinfo(1L),
|
||||
zipnote(1L), zipsplit(1L)
|
||||
|
||||
URL
|
||||
The Info-ZIP home page is currently at
|
||||
http://www.info-zip.org/pub/infozip/
|
||||
or
|
||||
ftp://ftp.info-zip.org/pub/infozip/ .
|
||||
|
||||
AUTHORS
|
||||
Greg Roelofs was responsible for the basic modifications to UnZip nec-
|
||||
essary to create UnZipSFX. See unzip(1L) for the current list of Zip-
|
||||
Bugs authors, or the file CONTRIBS in the UnZip source distribution for
|
||||
the full list of Info-ZIP contributors.
|
||||
|
||||
Info-ZIP 20 April 2009 (v6.0) UNZIPSFX(1L)
|
||||
75
OGP64/usr/share/doc/unzip/zipgrep.txt
Normal file
75
OGP64/usr/share/doc/unzip/zipgrep.txt
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
ZIPGREP(1L) ZIPGREP(1L)
|
||||
|
||||
NAME
|
||||
zipgrep - search files in a ZIP archive for lines matching a pattern
|
||||
|
||||
SYNOPSIS
|
||||
zipgrep [egrep_options] pattern file[.zip] [file(s) ...]
|
||||
[-x xfile(s) ...]
|
||||
|
||||
DESCRIPTION
|
||||
zipgrep will search files within a ZIP archive for lines matching the
|
||||
given string or pattern. zipgrep is a shell script and requires
|
||||
egrep(1) and unzip(1L) to function. Its output is identical to that of
|
||||
egrep(1).
|
||||
|
||||
ARGUMENTS
|
||||
pattern
|
||||
The pattern to be located within a ZIP archive. Any
|
||||
string or regular expression accepted by egrep(1) may be
|
||||
used. file[.zip] Path of the ZIP archive. (Wildcard
|
||||
expressions for the ZIP archive name are not supported.)
|
||||
If the literal filename is not found, the suffix .zip is
|
||||
appended. Note that self-extracting ZIP files are sup-
|
||||
ported, as with any other ZIP archive; just specify the
|
||||
.exe suffix (if any) explicitly.
|
||||
|
||||
[file(s)]
|
||||
An optional list of archive members to be processed, sep-
|
||||
arated by spaces. If no member files are specified, all
|
||||
members of the ZIP archive are searched. Regular expres-
|
||||
sions (wildcards) may be used to match multiple members:
|
||||
|
||||
* 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
|
||||
an exclamation point or a caret (`!' or `^') fol-
|
||||
lows the left bracket, then the range of charac-
|
||||
ters within the brackets is complemented (that is,
|
||||
anything except the characters inside the brackets
|
||||
is considered a match).
|
||||
|
||||
(Be sure to quote any character that might otherwise be
|
||||
interpreted or modified by the operating system.)
|
||||
|
||||
[-x xfile(s)]
|
||||
An optional list of archive members to be excluded from
|
||||
processing. Since wildcard characters match directory
|
||||
separators (`/'), this option may be used to exclude any
|
||||
files that are in subdirectories. For example, ``zipgrep
|
||||
grumpy foo *.[ch] -x */*'' would search for the string
|
||||
``grumpy'' in all C source files in the main directory of
|
||||
the ``foo'' archive, but none in any subdirectories.
|
||||
Without the -x option, all C source files in all directo-
|
||||
ries within the zipfile would be searched.
|
||||
|
||||
OPTIONS
|
||||
All options prior to the ZIP archive filename are passed to
|
||||
egrep(1).
|
||||
|
||||
SEE ALSO
|
||||
egrep(1), unzip(1L), zip(1L), funzip(1L), zipcloak(1L), zip-
|
||||
info(1L), zipnote(1L), zipsplit(1L)
|
||||
|
||||
URL
|
||||
The Info-ZIP home page is currently at http://www.info-
|
||||
zip.org/pub/infozip/ or ftp://ftp.info-zip.org/pub/infozip/ .
|
||||
|
||||
AUTHORS
|
||||
zipgrep was written by Jean-loup Gailly.
|
||||
|
||||
Info-ZIP 20 April 2009 ZIPGREP(1L)
|
||||
436
OGP64/usr/share/doc/unzip/zipinfo.txt
Normal file
436
OGP64/usr/share/doc/unzip/zipinfo.txt
Normal file
|
|
@ -0,0 +1,436 @@
|
|||
ZIPINFO(1L) ZIPINFO(1L)
|
||||
|
||||
NAME
|
||||
zipinfo - list detailed information about a ZIP archive
|
||||
|
||||
SYNOPSIS
|
||||
zipinfo [-12smlvhMtTz] file[.zip] [file(s) ...] [-x xfile(s) ...]
|
||||
|
||||
unzip -Z [-12smlvhMtTz] file[.zip] [file(s) ...] [-x xfile(s) ...]
|
||||
|
||||
DESCRIPTION
|
||||
zipinfo lists technical information about files in a ZIP archive, most
|
||||
commonly found on MS-DOS systems. Such information includes file
|
||||
access permissions, encryption status, type of compression, version and
|
||||
operating system or file system of compressing program, and the like.
|
||||
The default behavior (with no options) is to list single-line entries
|
||||
for each file in the archive, with header and trailer lines providing
|
||||
summary information for the entire archive. The format is a cross
|
||||
between Unix ``ls -l'' and ``unzip -v'' output. See DETAILED DESCRIP-
|
||||
TION below. Note that zipinfo is the same program as unzip (under
|
||||
Unix, a link to it); on some systems, however, zipinfo support may have
|
||||
been omitted when unzip was compiled.
|
||||
|
||||
ARGUMENTS
|
||||
file[.zip]
|
||||
Path of the ZIP archive(s). If the file specification is a
|
||||
wildcard, each matching file is processed in an order determined
|
||||
by the operating system (or file system). Only the filename can
|
||||
be a wildcard; the path itself cannot. Wildcard expressions are
|
||||
similar to Unix egrep(1) (regular) expressions 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 an exclamation point or a
|
||||
caret (`!' or `^') follows the left bracket, then the
|
||||
range of characters within the brackets is complemented
|
||||
(that is, anything except the characters inside the
|
||||
brackets is considered a match). To specify a verbatim
|
||||
left bracket, the three-character sequence ``[[]'' has to
|
||||
be used.
|
||||
|
||||
(Be sure to quote any character that might otherwise be inter-
|
||||
preted or modified by the operating system, particularly under
|
||||
Unix and VMS.) If no matches are found, the specification is
|
||||
assumed to be a literal filename; and if that also fails, the
|
||||
suffix .zip is appended. Note that self-extracting ZIP files
|
||||
are supported, as with any other ZIP archive; just specify the
|
||||
.exe suffix (if any) explicitly.
|
||||
|
||||
[file(s)]
|
||||
An optional list of archive members to be processed, separated
|
||||
by spaces. (VMS versions compiled with VMSCLI defined must
|
||||
delimit files with commas instead.) Regular expressions (wild-
|
||||
cards) may be used to match multiple members; see above. Again,
|
||||
be sure to quote expressions that would otherwise be expanded or
|
||||
modified by the operating system.
|
||||
|
||||
[-x xfile(s)]
|
||||
An optional list of archive members to be excluded from process-
|
||||
ing.
|
||||
|
||||
OPTIONS
|
||||
-1 list filenames only, one per line. This option excludes all
|
||||
others; headers, trailers and zipfile comments are never
|
||||
printed. It is intended for use in Unix shell scripts.
|
||||
|
||||
-2 list filenames only, one per line, but allow headers (-h),
|
||||
trailers (-t) and zipfile comments (-z), as well. This option
|
||||
may be useful in cases where the stored filenames are particu-
|
||||
larly long.
|
||||
|
||||
-s list zipfile info in short Unix ``ls -l'' format. This is the
|
||||
default behavior; see below.
|
||||
|
||||
-m list zipfile info in medium Unix ``ls -l'' format. Identical to
|
||||
the -s output, except that the compression factor, expressed as
|
||||
a percentage, is also listed.
|
||||
|
||||
-l list zipfile info in long Unix ``ls -l'' format. As with -m
|
||||
except that the compressed size (in bytes) is printed instead of
|
||||
the compression ratio.
|
||||
|
||||
-v list zipfile information in verbose, multi-page format.
|
||||
|
||||
-h list header line. The archive name, actual size (in bytes) and
|
||||
total number of files is printed.
|
||||
|
||||
-M pipe all output through an internal pager similar to the Unix
|
||||
more(1) command. At the end of a screenful of output, zipinfo
|
||||
pauses with a ``--More--'' prompt; the next screenful may be
|
||||
viewed by pressing the Enter (Return) key or the space bar.
|
||||
zipinfo can be terminated by pressing the ``q'' key and, on some
|
||||
systems, the Enter/Return key. Unlike Unix more(1), there is no
|
||||
forward-searching or editing capability. Also, zipinfo doesn't
|
||||
notice if long lines wrap at the edge of the screen, effectively
|
||||
resulting in the printing of two or more lines and the likeli-
|
||||
hood that some text will scroll off the top of the screen before
|
||||
being viewed. On some systems the number of available lines on
|
||||
the screen is not detected, in which case zipinfo assumes the
|
||||
height is 24 lines.
|
||||
|
||||
-t list totals for files listed or for all files. The number of
|
||||
files listed, their uncompressed and compressed total sizes ,
|
||||
and their overall compression factor is printed; or, if only the
|
||||
totals line is being printed, the values for the entire archive
|
||||
are given. The compressed total size does not include the 12
|
||||
additional header bytes of each encrypted entry. Note that the
|
||||
total compressed (data) size will never match the actual zipfile
|
||||
size, since the latter includes all of the internal zipfile
|
||||
headers in addition to the compressed data.
|
||||
|
||||
-T print the file dates and times in a sortable decimal format
|
||||
(yymmdd.hhmmss). The default date format is a more standard,
|
||||
human-readable version with abbreviated month names (see exam-
|
||||
ples below).
|
||||
|
||||
-U [UNICODE_SUPPORT only] modify or disable UTF-8 handling. When
|
||||
UNICODE_SUPPORT is available, the option -U forces unzip to
|
||||
escape all non-ASCII characters from UTF-8 coded filenames as
|
||||
``#Uxxxx''. This option is mainly provided for debugging pur-
|
||||
pose when the fairly new UTF-8 support is suspected to mangle up
|
||||
extracted filenames.
|
||||
|
||||
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
|
||||
-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 mostly self-explanatory. It also lists file
|
||||
comments and the zipfile comment, if any, and the type and number of
|
||||
bytes in any stored extra fields. Currently known types of extra
|
||||
fields include PKWARE's authentication (``AV'') info; OS/2 extended
|
||||
attributes; VMS filesystem info, both PKWARE and Info-ZIP versions;
|
||||
Macintosh resource forks; Acorn/Archimedes SparkFS info; and so on.
|
||||
(Note that in the case of OS/2 extended attributes--perhaps the most
|
||||
common use of zipfile extra fields--the size of the stored EAs as
|
||||
reported by zipinfo may not match the number given by OS/2's dir com-
|
||||
mand: OS/2 always reports the number of bytes required in 16-bit for-
|
||||
mat, whereas zipinfo always reports the 32-bit storage.)
|
||||
|
||||
Again, the compressed size figures of the individual entries include
|
||||
the 12 extra header bytes for encrypted entries. In contrast, the
|
||||
archive total compressed size and the average compression ratio shown
|
||||
in the summary bottom line are calculated without the extra 12 header
|
||||
bytes of encrypted entries.
|
||||
|
||||
ENVIRONMENT OPTIONS
|
||||
Modifying zipinfo's default behavior via options placed in an environ-
|
||||
ment variable can be a bit complicated to explain, due to zipinfo's
|
||||
attempts to handle various defaults in an intuitive, yet Unix-like,
|
||||
manner. (Try not to laugh.) 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 individual zipfile members are
|
||||
specified). A user who prefers the long-listing format (-l) can make
|
||||
use of the zipinfo's environment variable to change this default:
|
||||
|
||||
Unix Bourne shell:
|
||||
ZIPINFO=-l; export ZIPINFO
|
||||
|
||||
Unix C shell:
|
||||
setenv ZIPINFO -l
|
||||
|
||||
OS/2 or MS-DOS:
|
||||
set ZIPINFO=-l
|
||||
|
||||
VMS (quotes for lowercase):
|
||||
define ZIPINFO_OPTS "-l"
|
||||
|
||||
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 accomplished 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 behav-
|
||||
ior of the Unix command nice(1).
|
||||
|
||||
As suggested above, the default variable names are ZIPINFO_OPTS for VMS
|
||||
(where the symbol used to install zipinfo as a foreign command would
|
||||
otherwise be confused with the environment variable), and ZIPINFO for
|
||||
all other operating systems. For compatibility with zip(1L), ZIPIN-
|
||||
FOOPT is also accepted (don't ask). If both ZIPINFO and ZIPINFOOPT are
|
||||
defined, however, ZIPINFO takes precedence. unzip's diagnostic option
|
||||
(-v with no zipfile name) can be used to check the values of all four
|
||||
possible unzip and zipinfo environment variables.
|
||||
|
||||
EXAMPLES
|
||||
To get a basic, short-format listing of the complete contents 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 environment 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 them-
|
||||
selves or with each other, override any default listing of member
|
||||
files; only the header and/or footer are printed. This behavior is
|
||||
useful when zipinfo is used with a wildcard zipfile specification; the
|
||||
contents of all zipfiles are then summarized with a single command.
|
||||
|
||||
To list information on a single file within the archive, in medium for-
|
||||
mat, 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 informa-
|
||||
tion 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 explicitly:
|
||||
|
||||
zipinfo -mt storage "*.[ch]" Mak\*
|
||||
|
||||
To get maximal information about the ZIP archive, use the verbose
|
||||
option. It is usually wise to pipe the output into a filter such as
|
||||
Unix more(1) if the operating system allows it:
|
||||
|
||||
zipinfo -v storage | more
|
||||
|
||||
Finally, to see the most recently modified files in the archive, use
|
||||
the -T option in conjunction with an external sorting utility such as
|
||||
Unix sort(1) (and sed(1) as well, in this example):
|
||||
|
||||
zipinfo -T storage | sort -nr -k 7 | sed 15q
|
||||
|
||||
The -nr option to sort(1) tells it to sort numerically in reverse order
|
||||
rather than in textual order, and the -k 7 option tells it to sort on
|
||||
the seventh field. This assumes the default short-listing format; if
|
||||
-m or -l is used, the proper sort(1) option would be -k 8. Older ver-
|
||||
sions of sort(1) do not support the -k option, but you can use the
|
||||
traditional + option instead, e.g., +6 instead of -k 7. The sed(1)
|
||||
command filters out all but the first 15 lines of the listing. Future
|
||||
releases of zipinfo may incorporate date/time and filename sorting as
|
||||
built-in options.
|
||||
|
||||
TIPS
|
||||
The author finds it convenient to define an alias ii for zipinfo on
|
||||
systems that allow aliases (or, on other systems, copy/rename the exe-
|
||||
cutable, create a link or create a command file with the name ii). 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.
|
||||
|
||||
BUGS
|
||||
As with unzip, zipinfo's -M (``more'') option is overly simplistic in
|
||||
its handling of screen output; as noted above, it fails to detect the
|
||||
wrapping of long lines and may thereby cause lines at the top of the
|
||||
screen to be scrolled off before being read. zipinfo should detect and
|
||||
treat each occurrence of line-wrap as one additional line printed.
|
||||
This requires knowledge of the screen's width as well as its height.
|
||||
In addition, zipinfo should detect the true screen geometry on all sys-
|
||||
tems.
|
||||
|
||||
zipinfo's listing-format behavior is unnecessarily complex and should
|
||||
be simplified. (This is not to say that it will be.)
|
||||
|
||||
SEE ALSO
|
||||
ls(1), funzip(1L), unzip(1L), unzipsfx(1L), zip(1L), zipcloak(1L), zip-
|
||||
note(1L), zipsplit(1L)
|
||||
|
||||
URL
|
||||
The Info-ZIP home page is currently at
|
||||
http://www.info-zip.org/pub/infozip/
|
||||
or
|
||||
ftp://ftp.info-zip.org/pub/infozip/ .
|
||||
|
||||
AUTHOR
|
||||
Greg ``Cave Newt'' Roelofs. ZipInfo contains pattern-matching code by
|
||||
Mark Adler and fixes/improvements by many others. Please refer to the
|
||||
CONTRIBS file in the UnZip source distribution for a more complete
|
||||
list.
|
||||
|
||||
Info-ZIP 20 April 2009 (v3.0) ZIPINFO(1L)
|
||||
Loading…
Add table
Add a link
Reference in a new issue