1

У меня был довольно большой лог-файл. Так что я подумал, что я разархивирую его перед переносом на мой компьютер. я сделал

gzip bla.log

который дал мне крошечный

bla.log.gz

Когда я извлекаю его, используя

gunzip bla.log.gz

Я возвращаюсь к своему bla.log, но он маленький, и когда я открываю его с помощью vi, это выглядит так:

 ^@^@^@^@^@^@^@^@^@^@^@

Почему это случилось? Есть ли способ получить файл журнала из этого архива .gz?

И, кстати, я на Linux x86_64 x86_64 x86_64 GNU/Linux

2 ответа2

2

Это странно.

Насколько он маленький? Насколько большой был оригинальный файл журнала? Что говорит file bla.log.gz ?

Обычно gzip bla.log записывает bla.log.gz а затем, если это было успешно, удаляет bla.log . gunzip blo.log.gz напишет bla.log и затем удалит bla.log.gz

Если что-то пойдет не так во время выполнения команды gzip (скажем, не хватило места, превышена квота, произошел сбой сигнала или компьютер потерял питание), вы можете легко получить неполный или поврежденный bla.log.gz файл - но тогда оригинальный файл bla.log все еще должен быть там.

И если вы затем запустите gunzip bla.log.gz , вы должны получить запрос вроде:

gzip: bla.log already exists; do you wish to overwrite (y or n)? 

Он не должен был засорять ваш исходный файл bla.log если (а) вы не сказали ему (с помощью gunzip -f или ответив y на приведенное выше приглашение) или (b) он успешно сгенерировал bla.log.gz

Чтобы ответить на ваш вопрос, если bla.log.gz состоит не более чем из нескольких нулевых байтов, вы не получите от этого ничего полезного.

0

Обычно этого не должно происходить. Попробуйте прочитать файл gz с помощью такого инструмента, как gzless или что-то еще. Если это тоже прикручено. Что-то пошло не так во время сжатия.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .