Я получил кучу файлов с «линейным» контентом. Они имеют разные размеры, но мне нужно много файлов с одинаковыми размерами.
Что я имею:
- Файл 1, 70 строк, 5 МБ
- Файл 2, 113 строк, 15 МБ
Что я хочу:
- Файл 1, 10 МБ
- Файл 2, 10 МБ
Я хотел объединить файлы и разделить их с помощью команды «split» - но при использовании Split это разрывает строки - но мне нужно сохранить строки и разбивать их только после разрыва строки. Использование «разделенной» командной строки на основе также не сработает, поскольку размер отдельных строк сильно отличается.
Ответы:
Это не самый быстрый, но он делает то, что вы просили:
Установите
minimumsize
иoutdir
переменные затем вызвать его на путь к файлу , который вы хотите разделить на линии или размера.Я уверен, что для этого есть команда, которая намного быстрее.
источник
Небольшой сценарий оболочки должен решить проблему.
input.txt
Ваш входной файл и сценарий должен выдавать результат , какpart1.txt
,part2.txt
,part3.txt
... каждый из которых имеет данные ~ 10 МБ в нем.источник