Поврежденный EOF в большом файле gzip (2 ГБ) - PullRequest
0 голосов
/ 21 февраля 2020

У меня поврежденный файл gzip. Я прочитал много соответствующих постов, и все они предлагают мне распаковать файл и разархивировать его.

Я пробовал команды

gzcat, gzip

Я также пытался открыть файл gzip и записать его в новый файл в библиотеке Python gzip.

Все работает. Приведенные выше команды или сценарий python выполняются в течение длительного времени и выдают исключение в EOF.

Существует ли конкретный c способ исправить поврежденный EOF?

1 Ответ

0 голосов
/ 05 марта 2020

Ваш входной файл, вероятно, просто обрезан и поэтому не заканчивается должным образом. Любой распаковщик GZIP заметит это как повреждение файла. Боюсь, что нет способа обойти эту ситуацию, вы действительно потеряли информацию в конце вашего файла. Я могу только догадываться, сколько это.

Однако вы можете просто воссоздать восстановленный сжатый файл из поврежденного сжатого файла, который содержит всю информацию, которая все еще присутствовала в поврежденном файле:

zcat corrupted_file.gz 2>/dev/null | gzip > repaired_file.gz

Но, конечно, то, что ушло, ушло и не может быть возвращено этим. Это может помочь вам избежать проблем с другими инструментами в цепочке инструментов, которые жалуются на поврежденный файл.

Если в отремонтированном файле (который только ›восстанавливается с точки зрения GZIP) в конце не хватает жизненно важной информации, он все еще может не использоваться вообще в вашем конкретном c сценарии использования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...