5

Я ищу способ сжать большой файл (~ 10 ГБ) в несколько файлов, которые не превышают 150 МБ каждый.

Какие-нибудь мысли?

2 ответа2

9

Сжатие одного файла

Это сожмет файл / путь / к / вашему / большому / файлу и создаст много файлов с префиксом сжатым.gz в текущем каталоге, каждый файл с максимальным размером 150000000 байт:

gzip -c /path/to/your/large/file | split -b 150000000 - compressed.gz

Распаковать один файл

Чтобы распаковать файл и получить несжатый файл "/path/to/decrompressed/file", сжатый с помощью приведенной выше команды, используйте:

cat compressed.gz* | zcat > /path/to/decrompressed/file
3

split [OPTION] [INPUT [PREFIX] - разбить файл на части

Вывести куски фиксированного размера INPUT в PREFIXaa, PREFIXab, ...; размер по умолчанию - 1000 строк, а PREFIX по умолчанию - «x». Если нет INPUT или когда INPUT равен -, считайте стандартный ввод.

РАЗМЕР может иметь суффикс множителя: b для 512, k для 1K, m для 1 Мег.

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