descompacte o erro “Assinatura de final do diretório central não encontrada”


96

Tento descompactar um arquivo zip, mas ocorreu um erro:

$ unzip COCR2_100.zip 
Archive:  COCR2_100.zip
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
note:  COCR2_100.zip may be a plain executable, not an archive
unzip:  cannot find zipfile directory in one of COCR2_100.zip or
        COCR2_100.zip.zip, and cannot find COCR2_100.zip.ZIP, period.

Pesquisei no Google, mas não encontrei uma solução. Fiquei me perguntando por que é e como devo corrigi-lo? Obrigado!

O arquivo zip pode ser baixado de COCR2_100 . É uma aplicação, e aqui está o site http://users.belgacom.net/chardic/cocr2.html .

Meu sistema operacional é 10.10.


Consegui baixar e extrair o programa sem problemas usando o link de espelho. Talvez o seu download esteja corrompido? aqui está a minha saída md5sum no arquivo: a55352aac3193948478952dea33828ef /home/chuck/Desktop/COCR2_100.zip
Ctuchik

2
Se você md5sum do arquivo e obter o mesmo resultado "a55352aac3193948478952dea33828ef" Então o download é bom, mas se não é exatamente o mesmo, em seguida, o download está corrompido
Ctuchik

@Ctuchik: Obrigado! O espelho é bom. O original está quebrado.
Tim

np broto, feliz que eu poderia estar de serviço.
Ctuchik

5
Use o mais robusto jar xvf archive.zipou tente consertar o arquivo com zip -F archive.zip -O archive-fixed.zip(ou -FF, consulte man zip).
Zaz

Respostas:


27

O problema é exatamente o que diz. O descompactação não pode encontrar a linha de código que sinaliza o final do arquivo morto, portanto:

  1. O arquivo está corrompido.
  2. Não é um arquivo .zip.
  3. Existem mais de 1 partes no arquivo, mas isso não me parece possível. Você deve tentar o outro espelho também. Funcionou para mim.

PS Observe como o programa é feito para Windows. Então você precisa do Wine (de http://www.winehq.com ou do Ubuntu Software Center) para executá-lo.


2
Parece que "descompactar" não é muito robusto e, portanto, não pode lidar com arquivos corrompidos (ou baixados incompletamente).
Loevborg

Não exatamente, posso descompactar such filecom o Winrar ou outras ferramentas populares do Windows. Arquivo de exemplo stanford-chinese-corenlp-2016-10-31-models.jarem nlp.stanford.edu/software/CRF-NER.shtml .
Mithril

162

Experimente esta excelente solução:

jar xvf COCR2_100.zip

passos:

  1. arraste e solte o arquivo na janela do terminal.
  2. use as setas do teclado para navegar para o início da linha no terminal
  3. digite jar xvfna frente do nome do arquivo, lembrando de deixar espaço antes do início do nome do arquivo.
  4. pegue uma cerveja e assista ao terminal trabalhar sua mágica ao extrair arquivos.

O local para onde os novos arquivos vão varia, mas geralmente o melhor truque para encontrá-los é clicar no nome do computador no Finder, que deve exibir as atividades mais recentes na parte superior de todos os arquivos.

Se o jarcomando não estiver disponível, você poderá instalar fastjarcolando o seguinte no terminal:

sudo apt-get install fastjar

10
@EliahKagan não é, mas o truque funciona
Christoph Walesch

6
Isso funcionou magicamente para mim. +1
Yahel 01/02

3
Uau, isso é exatamente o que eu estava procurando! Def deve ser a resposta aceita. Alguma idéia de por que isso funciona?
Willem Ellis

4
Eu acho que isso funciona para arquivos corrompidos (ou baixados incompletamente) porque o jarutilitário não verifica a End-of-central-directoryassinatura antes de iniciar a extração. Se esse for realmente o caso, é provável que você não consiga extrair todos os arquivos e o utilitário possa terminar com um erro como Unexpected end of ZLIB input streamno final.
Chirag Bhatia # chirag64

5
Votado. Obrigado: foi uma dor de cabeça reparar o zip de 6,5Gb com o "zip -FF": o arquivo "fixo" produzido foi a cópia exata do original danificado (incompleto). Eu sabia que arquivos .jar são zips internamente, mas eu nunca usei o executável jar para descompactar arquivos zip :-)
Troublemaker-DV

20

Descompactar com 7z funcionou para mim:

7z x COCR2_100.zip

Instale via APT com apt install p7zip-full.


Obrigado @Campa 7zme ajudou a abrir um zip criptografado por senha com o problema semelhante.
Cyril

@Campa Obrigado, eu estava enfrentando problemas para descompactar com artifacory, compilação do aplicativo elixir.
ShreePool

6

Eu tive um problema semelhante hoje e tive algum sucesso com dd e gunzip. Tente o seguinte:

dd if=corrupt.zip | gunzip -f > xx.csv

No meu caso, ainda recebi o erro "gunzip: stdin: final inesperado de arquivo", mas pelo menos consegui ver alguma saída.


Descobri que zcat corrupt.zip > xx.csvfez quase exatamente a mesma coisa ....
Wilf

1
Por que você o exibe como um CSV?
Daniel Pendergast

2

O erro pode ser causado pela mistura de tipos de arquivo:

Notei que ao usar unzip, mas em um gunziparquivo (GNU), eu receberia esse erro, por exemplo

Assinatura de fim do diretório central não encontrada. Esse arquivo não é um arquivo zip ou constitui um disco de um arquivo com várias partes. Neste último caso, o comentário do diretório central e do arquivo zip será encontrado no (s) último (s) disco (s) deste arquivo. descompacte: não é possível localizar o diretório zipfile em um dos campos create_tables.sql.gz ou create_tables.sql.gz.zip e não pode encontrar create_tables.sql.gz.ZIP, período. "

A utilização gunzipneste mesmo arquivo foi realizada sem erros. !!


1

Eu acho que os caras / moças que responderam a você estão no caminho certo, é muito bem um arquivo corrompido. Se for esse o caso, tente outro espelho para baixar o arquivo. Você pode tentar instalar o rar abrindo o terminal sudo apt-get install rar que, para um arquivo zip verdadeiro, rar é um pouco exagerado. No entanto, ele adiciona suporte a outros formatos e permite extrair diferentes tipos de arquivos.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.