Команда разбить текстовый файл по количеству строк

Ситуация:

У меня есть текстовый файл объемом около 1,5 ГБ, содержащий около 4000000 строк.

Я хочу импортировать это в Libreoffice calc, и, как вы знаете, вы не можете импортировать этот огромный файл с большим количеством строк (я думаю, максимум - 65000 строк).

В любом случае мне нужна простая команда, которая может разбить этот файл на более мелкие файлы с количеством строк в каждом файле <65000 строк.

16
задан 21 May 2015 в 08:57

2 ответа

Вы можете использовать команду split:

split -l N /path-to-file

Где N - максимальное количество строк, которое может быть в файле.

Эта команда разбивает файл на более мелкие файлы, каждый из которых содержит N строк.

Используйте man split для получения дополнительной информации.

0
ответ дан 21 May 2015 в 08:57

Если вы используете split и создаете несколько файлов, вашей следующей проблемой будет то, как использовать Calc для манипулирования всеми этими данными во всех этих файлах. И это накапливает одну проблему на другую. С 65000 строк это будет 62 (!) Страницы.

Вы просто используете не тот инструмент. Используйте Libreoffice Base или MySQL для импорта данных, а затем используйте Libreoffice Calc для расчета и / или манипулирования этими данными.

Относительно ограничений это зависит от используемой вами Libreofficeversion:

  • до 3.3.3: ограничение составляет 65 536 строк
  • 3.3.3 и позже: 1 048 576 строк (1M)

Если вы хотите, вы можете сделать 4-метровые записи с 3.3.3+ на 4 страницах, но базовый модуль LibreOffice может импортировать практически без ограничения строки, если это не так довольно. Вот введение в то, как это сделать и , вот пример базы данных с файлом импорта . Управление данными в базе легко и быстро.

0
ответ дан 21 May 2015 в 08:57

Другие вопросы по тегам:

Похожие вопросы: