Using Info-ZIP

Zip list of files

For example in a Makefile

mkzip:
    zip -vj out/path/out.zip $(shell cat files.txt)

Where files.txt looks like

a/b/c.txt
d/e.txt
f/g/h/i/j.txt

The contents of the zip will be

c.txt
e.txt
j.txt

Misc

for i in *zip; do mkdir -p "$i"_extracted && unzip "$i" -d "$i"_extracted ; done