It’s quite tedious to deal with zip files on command line if you don’t want to unzip and zip the same archive file again and again.
list a zip file:
$ unzip -l ./zipfile | less
unzip a specific file from an archive:
$ unzip -p ./zipfile internal/path/to/a/file.txt >file.txt
update a specific file in an archive:
$ zip path/to/target.zip internal/path/to/a/file.txt
They should work ok.