unzip
Extract or List Zip Archives
Description
Extract files from or list a zip archive.
Usage
unzip(zipfile, files = NULL, list = FALSE, overwrite = TRUE, junkpaths = FALSE, exdir = ".", unzip = "internal", setTimes = FALSE)
Arguments
zipfile | The pathname of the zip file: tilde expansion (see |
files | A character vector of recorded filepaths to be extracted: the default is to extract all files. |
list | If |
overwrite | If |
junkpaths | If |
exdir | The directory to extract files to (the equivalent of |
unzip | The method to be used. An alternative is to use |
setTimes | logical. For the internal method only, should the file times be set based on the times in the zip file? (NB: this applies to included files, not to directories.) |
Value
If list = TRUE
, a data frame with columns Name
(character) Length
(the size of the uncompressed file, numeric) and Date
(of class "POSIXct"
).
Otherwise for the "internal"
method, a character vector of the filepaths extracted to, invisibly.
Note
The default internal method is a minimal implementation, principally designed for Windows' users to be able to unpack Windows binary packages without external software. It does not (for example) support Unicode filenames as introduced in zip 3.0
: for that use unzip = "unzip"
with unzip 6.00
or later. It does have some support for bzip2
compression and > 2GB zip files (but not >= 4GB files pre-compression contained in a zip file: like many builds of unzip
it may truncate these, in R's case with a warning if possible).
If unzip
specifies a program, the format of the dates listed with list = TRUE
is unknown (on Windows it can even depend on the current locale) and the return values could be NA
or expressed in the wrong time zone or misinterpreted (the latter being far less likely as from unzip 6.00
).
File times in zip files are stored in the style of MS-DOS, as local times to an accuracy of 2 seconds. This is not very useful when transferring zip files between machines (even across continents), so we chose not to restore them by default.
Source
The internal C code uses zlib
and is in particular based on the contributed minizip application in the zlib
sources (from https://zlib.net/) by Gilles Vollant.
See Also
unz
to read a single component from a zip file.
zip
for packing, i.e., the “inverse” of unzip()
; further untar
and tar
, the corresponding pair for (un)packing tar archives (“tarballs”) such as R source packages.
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.