Как распаковать файл .bin.gz?

14

У меня есть файл с именем вроде file.bin.gz.

Я попытался использовать, gzip -d f.bin.gzчтобы распаковать его, и получил .binфайл.

Это правильный способ распаковать .binфайлы для использования gzip -d? Кроме того, .binэто бинарный файл, верно?

Мартин
источник
1
.binэто бинарный файл, да. Обычно это просто означает одно из двух: либо программист не задокументировал формат, либо по какой-то причине он хочет замаскировать его.
Score_Under

Ответы:

33

Да, то, что вы сделали, было одним из правильных способов. Чтобы разархивировать .gzфайл, используйте gunzipили gzip -d.

Если ваш gzip-файл есть file.bin.gz, вы можете распаковать его:

gunzip file.bin.gz

Это распаковывает его file.bin. Если операция прошла успешно, оригинал file.bin.gzавтоматически удаляется. Это означает, что сжатый файл заменяется распакованным файлом.

Если вы хотите сохранить оригинал, передайте флаг -k/ --keep:

gunzip -k file.bin.gz

gzipведет себя как gunzipкогда он вызывается с флагом -d/ --decompress/ --uncompress. Так что это тоже работает:

gzip -d file.bin.gz

Как и в случае с gunzipповедением по умолчанию gzip -dявляется замена его входного файла, как только он успешно. Вы можете передать оба, -dи -kесли вы хотите сохранить входной файл.

(Все это применимо независимо от того, какой тип файла вы хотите распаковать; ни один из них не относится к файлу с .binего именем - это только часть примера, который я использовал, чтобы лучше соответствовать вашей ситуации.)

Вы можете запустить man gunzipдля получения дополнительной информации или gunzip --helpдля краткого изложения вариантов.


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

Чтобы получить больше информации о том file.bin, что есть, запустите fileна нем:

file file.bin

(Это не относится к file.binимея fileв своем имени. В общем для файла abcвы можете узнать о том , какой файл он , как представляется, запустив file abc.)

(Это также не относится к .binчасти имени файла, имеющей какое-либо значение вообще )

Элия ​​Каган
источник
1
binwalk иногда полезен, если файла недостаточно.
hildred
0

Если вам действительно нужно определить тип файла, вы можете использовать fileпрограмму после распаковки:

file file.bin

сверится с базой данных, найдя известные маркеры типов файлов (например, строку '' или 'GIF89a'), и выведет, какой это тип файла. Как указывалось ранее, иногда программисты будут использовать .bin, чтобы замаскировать стандартный тип файла, просто изменив расширение.

asrhwrhaawer
источник