ziptool
—
modify zip archives
ziptool |
[-ceghnrst ] [-l
length] [-o
offset] zip-archive
command [command-args ...]
[command [command-args ...]
...] |
ziptool
modifies the zip archive
zip-archive according to the
commands given.
Supported options:
-c
- Check zip archive consistency when opening it.
-e
- Error if archive already exists (only useful with
-n
).
-g
- Guess file name encoding (for
stat
command).
-h
- Display help.
-l
length
- Only read length bytes of archive. See also
-o
.
-n
- Create archive if it doesn't exist. See also
-e
.
-o
offset
- Start reading input archive from offset. See also
-l
.
-r
- Print raw file name encoding without translation (for
stat
command).
-s
- Follow file name convention strictly (for
stat
command).
-t
- Disregard current file contents, if any. Note: use this
with care, it deletes all existing file contents when you modify the
archive.
For all commands below, the index is zero-based. In other words, the first entry
in the zip archive has index 0.
Supported commands and arguments are:
add
name content
- Add file called name using the string
content from the command line as data.
add_dir
name
- Add directory name.
add_file
name file_to_add offset len
- Add file name to archive, using
len bytes from the file
file_to_add as input data, starting at
offset.
add_from_zip
name archivename index offset len
- Add file called name to archive using data from
another zip archive archivename using the entry with
index index and reading len
bytes from offset.
cat
index
- Output file contents for entry index to stdout.
-
index flags
- Print the number of extra fields for archive entry
index using flags.
-
index extra_id flags
- Print number of extra fields of type extra_id for
archive entry index using
flags.
delete
index
- Remove entry at index from zip archive.
-
index extra_idx flags
- Remove extra field number extra_idx from archive
entry index using flags.
-
index extra_id extra_index flags
- Remove extra field number extra_index of type
extra_id from archive entry
index using flags.
- Print archive comment.
-
index extra_index flags
- Print extra field extra_index for archive entry
index using flags.
-
index extra_id extra_index flags
- Print extra field extra_index of type
extra_id for archive entry
index using flags.
-
index
- Get file comment for archive entry index.
get_num_entries
flags
- Print number of entries in archive using flags.
name_locate
name flags
- Find entry in archive with the filename name using
flags and print its index.
rename
index name
- Rename archive entry index to
name.
replace_file_contents
index data
- Replace file contents for archive entry index with
the string data.
-
comment
- Set archive comment to comment.
-
index extra_id extra_index flags value
- Set extra field number extra_index of type
extra_id for archive entry
index using flags to
value.
-
index comment
- Set file comment for archive entry index to string
comment.
set_file_compression
index method compression_flags
- Set file compression method for archive entry index
to method using
compression_flags. Note:
Currently, compression_flags are ignored.
set_file_encryption
index method password
- Set file encryption method for archive entry index
to method with password
password.
set_file_mtime
index timestamp
- Set file modification time for archive entry index
to UNIX mtime timestamp.
set_file_mtime_all
timestamp
- Set file modification time for all archive entries to UNIX mtime
timestamp.
set_password
password
- Set default password for encryption/decryption to
password.
stat
index
- Print information about archive entry index.
Some commands take flag arguments. Supported flags are:
Some commands take compression method arguments. Supported methods are:
Some commands take encryption method arguments. Supported methods are:
The ziptool
utility exits 0 on success,
and >0 if an error occurs.
Add a file called teststring.txt to the zip archive
testbuffer.zip with data “This is a
test.\n” where “\n” is replaced with a newline character:
ziptool testbuffer.zip add teststring.txt \"This is a test.\n\"
Delete the first file from the zip archive
testfile.zip:
ziptool testfile.zip delete 0
ziptool
was added in libzip 1.1.