Analiza właściwości pliku ZIP

17

Mam plik ZIP i chcę ustalić, w jaki sposób został skompresowany (określony algorytm, właściwości zastosowane do zastosowania tego algorytmu itp.). W jaki sposób mogę to zrobić?

RCIX
źródło

Odpowiedzi:

16

zipinfo(z InfoZIP ) powie ci dużo o pliku.

Przykładowe dane wyjściowe z zipinfo -v(przy użyciu opcji „verbose” -v):

Archive:  /tmp/test.zip
There is no zipfile comment.

End-of-central-directory record:
-------------------------------

  Zip archive file size:                     22341 (0000000000005745h)
  Actual end-cent-dir record offset:         22319 (000000000000572Fh)
  Expected end-cent-dir record offset:       22319 (000000000000572Fh)
  (based on the length of the central directory and its expected offset)

  This zipfile constitutes the sole disk of a single-part archive; its
  central directory contains 1 entry.
  The central directory is 88 (0000000000000058h) bytes long,
  and its (expected) offset in bytes from the beginning of the zipfile
  is 22231 (00000000000056D7h).


Central directory entry #1:
---------------------------

  tmp/bookmarks.html

  offset of local header from start of archive:   0
                                                  (0000000000000000h) bytes
  file system or operating system of origin:      Unix
  version of encoding software:                   3.0
  minimum file system compatibility required:     MS-DOS, OS/2 or NT FAT
  minimum software version required to extract:   2.0
  compression method:                             deflated
  compression sub-type (deflation):               normal
  file security status:                           not encrypted
  extended local header:                          no
  file last modified on (DOS date/time):          2010 Feb 20 16:22:48
  file last modified on (UT extra field modtime): 2010 Feb 20 16:22:47 local
  file last modified on (UT extra field modtime): 2010 Feb 20 15:22:47 UTC
  32-bit CRC value (hex):                         3e84c75c
  compressed size:                                22155 bytes
  uncompressed size:                              76774 bytes
  length of filename:                             18 characters
  length of extra field:                          24 bytes
  length of file comment:                         0 characters
  disk number on which file begins:               disk 1
  apparent file type:                             text
  Unix file attributes (100600 octal):            -rw-------
  MS-DOS file attributes (00 hex):                none

  The central-directory extra field contains:
  - A subfield with ID 0x5455 (universal time) and 5 data bytes.
    The local extra field has UTC/GMT modification/access times.
  - A subfield with ID 0x7875 (Unix UID/GID (any size)) and 11 data bytes:
    01 04 e8 03 00 00 04 e8 03 00 00.

  There is no file comment.

Jeśli to nie wystarczy, proszę wyjaśnić, jakich informacji potrzebujesz.


Zauważ, że zipinfofunkcjonalność jest w rzeczywistości częścią unzipprogramu (dwa pliki binarne są zwykle identyczne lub łączą się ze sobą). Możesz wywołać, unzip -Zaby uzyskać zipinfofunkcjonalność. Więc jeśli twoja instalacja nie powinna zawierać pliku zipinfobinarnego, możesz unzip -Zzamiast tego użyć .

Śleske
źródło
Wygląda na to, czego potrzebuję, ale mirrory InfoZip wydają się być wyłączone i tylko źródło jest dostępne w sourceforge ...
RCIX
Ok, wymyśliłem to. Najpierw postępowałem zgodnie z instrukcjami FTP (z niewielką modyfikacją), ale potem odkryłem, że możesz pobrać to, czego potrzebujesz z ftp.info-zip.org/pub/infozip/win32 .
RCIX
Przepraszam, wciąż potrzebuję pomocy: zipinfo nie pojawia się w pobranym archiwum :(
RCIX
@RCIX: Przepraszamy, nie mam pojęcia, gdzie można uzyskać pliki binarne systemu Windows. Używam Linuksa, gdzie jest częścią wszystkich dystrybucji :-). Wystarczy opublikować nowe pytanie, aby zapytać o pliki binarne systemu Windows.
śleske,
@RCIX, @sleske: Wydaje się, że zipinfo jest scalony w rozpakowanie. Pobierz unz*xn-x64.exei użyjunzip.exe -Zv FILENAME.zip
Ivan Chau,
11

zipinfoKomenda może zostać faktycznie uruchomić w systemie Windows za pomocą unzip -Zpolecenia, jak podano w dokumentacji archiwum informacji-Zip jest.

Utwórz plik wsadowy „zipinfo.bat” za pomocą tego polecenia w środku:

unzip.exe -Zsvh %1

i masz zipinfosystem Windows.

fred78800
źródło
1
To polecenie działa również w CentOS / Linux, oczywiście po usunięciu .exe
Aditya Kumar Pandey