ziptool —
modify zip archives
  
    | ziptool | [ -ceghnrst] [-llength] [-ooffset] zip-archivecommand[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 statcommand).
- -h
- Display help.
- -llength
- Only read length bytes of archive. See also
      -o.
- -n
- Create archive if it doesn't exist. See also
    -e.
- -ooffset
- Start reading input archive from offset. See also
      -l.
- -r
- Print raw file name encoding without translation (for
      statcommand).
- -s
- Follow file name convention strictly (for statcommand).
- -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:
  - addname content
- Add file called name using the string
      content from the command line as data.
- add_dirname
- Add directory name.
- add_filename 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_zipname 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.
- catindex
- 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.
- deleteindex
- 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_entriesflags
- Print number of entries in archive using flags.
- name_locatename flags
- Find entry in archive with the filename name using
      flags and print its index.
- renameindex name
- Rename archive entry index to
      name.
- replace_file_contentsindex 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_compressionindex method compression_flags
- Set file compression method for archive entry index
      to method using
      compression_flags. Note:
      Currently, compression_flags are ignored.
- set_file_encryptionindex method password
- Set file encryption method for archive entry index
      to method with password
      password.
- set_file_mtimeindex timestamp
- Set file modification time for archive entry index
      to UNIX mtime timestamp.
- set_file_mtime_alltimestamp
- Set file modification time for all archive entries to UNIX mtime
      timestamp.
- set_passwordpassword
- Set default password for encryption/decryption to
      password.
- statindex
- 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:
Theziptool 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.