Как распаковать только часть файла?

Как распаковать только часть файла?

У меня есть большой, повторяющийся текстовый файл. Он очень хорошо сжимается — в сжатом виде он занимает около 3 МБ. Однако, если его распаковать, он занимает 1,7 ГБ. Поскольку он повторяющийся, мне нужна только часть вывода, чтобы проверить содержимое файла.

Он был сжат с помощью gzip. gunzipЕсть ли способ распаковать только первые несколько мегабайт файла?

решение1

Вы можете распаковать данные в стандартный вывод и пропустить их через что-то вроде того, headчтобы захватить только часть:

gunzip -c file.gz | head -c 20M >file.part

Флаг -cтребует headреализации head, предоставляемой GNU coreutils.

ddтакже может быть использовано:

gunzip -c file.gz | dd of=file.part bs=1M count=20

Оба эти конвейера скопируют первые 20 МБ несжатого файла в file.part.

Связанный контент