Według man unzip
:
NAME
unzip - list, test and extract compressed files in a ZIP ar‐
chive
SYNOPSIS
unzip [-Z] [-cflptTuvz[abjnoqsCDKLMUVWX$/:^]] file[.zip]
[file(s) ...] [-x xfile(s) ...] [-d exdir]
[file(s)]
An optional list of archive members to be processed,
separated by spaces. (VMS versions compiled with
VMSCLI defined must delimit files with commas instead.
See -v in OPTIONS below.) Regular expressions (wild‐
cards) may be used to match multiple members; see
above. Again, be sure to quote expressions that would
otherwise be expanded or modified by the operating sys‐
tem.
Innymi słowy, argumenty podane po nazwie archiwum są uważane za listę plików, które chcesz wyodrębnić:
$ unzip A.zip B.zip C.zip
Jeśli chcesz porównać zawartość dwóch plików ZIP, możesz po prostu wyświetlić pliki w każdym archiwum i porównać listy. Opcje -lqq
spowoduje unzip
aby wyświetlić listę plików w archiwum:
$ unzip -lqq A.zip
424 2013-03-24 04:39 B.zip
424 2013-03-24 04:39 C.zip
424 2013-03-24 04:39 d.txt
Aby więc porównać dwa archiwa, wylistuj pliki w każdym, zapisz w pliku tekstowym i porównaj pliki tekstowe:
$ unzip -lqq A.zip | sort > A_files.txt
$ unzip -lqq D.zip | sort > D_files.txt
$ diff A_files.txt D_files.txt | grep '<\|>'
< 0 2013-03-24 04:57 only_in_A.txt
> 0 2013-03-24 04:57 only_in_D.txt
diff
.