Archive-Unzip-Burst
view release on metacpan or search on metacpan
unzip-6.0/unzip.txt view on Meta::CPAN
-: [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
( run in 0.851 second using v1.01-cache-2.11-cpan-5735350b133 )