Analizando las propiedades de un archivo ZIP

17

Tengo un archivo ZIP y quiero determinar cómo se comprimió (el algoritmo específico, las propiedades utilizadas para aplicar ese algoritmo, etc.). ¿Cómo puedo hacer esto?

RCIX
fuente

Respuestas:

16

zipinfo(de InfoZIP ) le dirá mucho sobre un archivo.

Salida de muestra de zipinfo -v(usando la opción "detallada" -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.

Si eso no es suficiente, explique qué información necesita.


Tenga en cuenta que la zipinfofuncionalidad es en realidad parte del unzipprograma (los dos archivos binarios suelen ser idénticos o están vinculados entre sí). Puede invocar unzip -Zpara obtener zipinfola funcionalidad. Entonces, si su instalación no debe tener un zipinfobinario, puede usar unzip -Zen su lugar.

sleske
fuente
Esto se parece a lo que necesito, pero los espejos de InfoZip parecen estar caídos y solo la fuente está disponible en sourceforge ...
RCIX
Ok, lo descubrí. Primero seguí sus instrucciones FTP (con una ligera modificación), pero luego descubrí que puedes obtener lo que necesitas de ftp.info-zip.org/pub/infozip/win32 .
RCIX
Lo siento, todavía necesito ayuda: zipinfo no aparece en el archivo que descargué :(
RCIX
@RCIX: Lo siento, no tengo idea de dónde puede obtener los binarios de Windows. Yo uso Linux, donde es parte de todas las distribuciones :-). Simplemente publique una nueva pregunta para preguntar sobre los binarios de Windows.
sleske
@RCIX, @sleske: Parece que zipinfo se fusionó en descomprimir. Descargar unz*xn-x64.exey usarunzip.exe -Zv FILENAME.zip
Ivan Chau
11

El zipinfocomando realmente se puede ejecutar en Windows mediante el unzip -Zcomando, como se indica en la documentación del archivo info-zip.

Haga un archivo por lotes "zipinfo.bat" con este comando dentro:

unzip.exe -Zsvh %1

y tienes zipinfocorriendo en Windows.

fred78800
fuente
1
Este comando también funciona en CentOS / Linux, obviamente después de eliminar .exe
Aditya Kumar Pandey