Если есть многосточный текстовый файл, который нужно разделить на части - быстро и не вручную, то есть несколько вариантов для этого.

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

В порядке предпочтения/простоты использования и убывания приоритета:

 

1. С помощью Windows Powershell

Команда в одну строчку:

 

gc file.txt -readcount 1000 | ForEach-Object { $i=0 } { $_ | Out-File "new_file${i}.txt"; $i++}

 

gc - сокращенный вариант команды GetContent (чтение файла);

file.txt - исходный многострочный файл, который нужно разделить на несколько с меньшим количеством строк;

1000 - число строк в каждом файле на выходе;

new_file${i}.txt - маска для имени файлов на выходе, вместо ${i} будет инкремент числа от 0 и далее.

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

Это самый простой и быстрый вариант, причем Powershell легко справится с большими файлами (2 миллиона строк и более).

Условие: пользователь должен хоть чуть-чуть дружить с командной строкой.

Дальше можно не читать :)

 




  

 

2. С помощью BAT-файла

Создать текстовый файл со следующим содержимым:

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

Сохранить его с расширением BAT в пустую папку. Скопировать в эту же папку текстовый файл, который необходимо разделить на части, указав его название (см. 3 срочку) и нужное количество строк в финальных результирующих файлах (см. 5 срочку). Сохранить изменения в BAT-файле.

Запустить BAT-файл и дождаться окончания работы.

Чтобы вручную не набирать текст батника, его содержимое:

 

@Echo Off
SetLocal enabledelayedexpansion
Set list=big_text_file.txt
REM ## Количество строк в выходных файлах:
Set str=500

Set Num=%str%& Set File=0
For /F "tokens=* usebackq delims=" %%i In ("%list%") Do (
Set /a Num+=1
If !Num! GEQ %str% (
Set Num=0
Set /a File+=1
Set nFile=0!File!
Set nFile=!nFile:~-2!
Echo %%i>New_File!nFile!.txt
) Else Echo %%i>>New_File!nFile!.txt
)
Pause
Exit

 

 

3. С помощью Windows-приложения

Есть несколько таких программ - как бесплатных, так и платных.

Возможно, позже будут приведены примеры.

 

 

4. С помощью Web-приложения

Есть сайты, которые предлагают различные действия по форматированию и обработке файлов.

Некоторые из них при проверке совсем отказались работать, один отработал вроде бы корректно, но скачивать по-одному 30 текстовых файлов совсем не радовало - разработчики данного сервиса могли бы добавить архивирование пакета файлов в один, чтобы было удобно скачивать результат.

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

Также при использовании больших файлов - размером 100 Мб и более может быть проблемс с загрузкой - она может оборваться в процессе из-за нестабильного или низкоскоростного интернет-соединения, или у сервера параметр "max_upload_size" установлен на меньшее значение, чем ваш файл.

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

 

Комментарии (3)

This comment was minimized by the moderator on the site

а куда должны сохраниться файлы ?

This comment was minimized by the moderator on the site

а куда должны сохраниться файлы ?

В исходную папку (если пробуете вариант №1). Только имя файла надо указать отличное от исходного

This comment was minimized by the moderator on the site

А сколько будет вторым вариантом обрабатываться файл на 20-30 млн строк по времени примерно ?
И как понять что процесс успешно запустился ? У меня прост cmd после запуска висит со строчкой нажать любую кнопку для выхода

Здесь не опубликовано еще ни одного комментария

Оставьте свой комментарий

  1. Опубликовать комментарий как Гость.
0 Значки
Вложения (0 / 3)
Поделитесь своим местоположением

      Как отключить эскизы окон на панели задач Windows 10
      Как отключить эскизы окон на панели задач Windows 10

      В Windows 10 можно посмотреть миниатюры окон всех запущенных приложений (кроме работающих в фоне) → навести указатель мыши и, не разворачивая полностью экран, найти среди нескольких открытых окон браузера то самое окно, которое нужно. Или среди нескольких открытых документов Word найти нужный документ. Бестолковая функция. Потому что часто срабатывает тогда, когда это не нужно, закрывая важный контент...




      Как добавить самолет в программу Jeppesen FliteStar, FliteMap
      Как добавить самолет в программу Jeppesen FliteStar, FliteMap

      Программа Jeppesen FliteStar/FliteMap позволяет выполнять навигационные расчеты для полета воздушного судна с одного аэродрома на другой. При этом учитываются летно-технические характеристики выбранного воздушного судна. Поэтому для наиболее точных результатов нужно использовать конкретную модель воздушного судна, имеющей правильные ЛТХ.




      Аналоги phpMyAdmin
      Аналоги phpMyAdmin

      PHPMyAdmin - это веб-интерфейс для администрирования СУБД MySQL, который позволяет через браузер администрировать ваши БД, запускать различные команды SQL, просматривать содержимое таблиц и баз данных, редактировать их и создавать новые. Многие web-разработчики пользуются PHPMyAdmin, соответственно, многие хостеры обязательно включают PHPMyAdmin в сборку при установке сервера. PHPMyAdmin имеет...




      Открытие файлов Excel в отдельных окнах
      Открытие файлов Excel в отдельных окнах

      Многие пользователи офисного пакета MS Office наверняка замечали неудобную "фишку" программы Excel - невозможность открыть разные файлы в различных окнах программы. Например, хотите вы открыть один xls-файл (или xlsx-файл) на одном мониторе, а второй xls-файл на другом, но у вас ничего не получится! Программа MS Excel не даст вам такой возможности, т.к. по умолчанию файлы Excel открываются в MS...




      Фразы про БОЛЬ (PAIN)
      Фразы про БОЛЬ (PAIN)

      Выражения, в которых используется слово БОЛЬ (pain), использование их в повседневной речи и сравнение с русскими аналогами. 1. NO PAIN, NO GAIN (досл. «нет боли, нет выгоды») - Это выражение можно перевести как «не попотеешь, не заработаешь». Имеется русский аналог: «под лежачий камень вода не течет», «без труда не вытащишь и рыбку из пруда».Пример: If you want to be successful you should work hard....




      Использование системы координат WGS-84 в мире
      Использование системы координат WGS-84 в мире

      Международная организация гражданской авиации (ИКАО) предписывает использовать Всемирную геодезическую систему 1984 (WGS-84) или эквивалентную ей в качестве стандарта для указания координат широты и долготы аэронавигациионных данных. В настоящее время далеко не все страны используют геодезическую систему WGS-84 для определения, хранения и публикации аэронавигациионных данных. Не смотря на...




      Гаджеты для iPad
      Гаджеты для iPad

      Пользователи, имеющиие iPad рано или поздно сталкиваются с необходимостью расширить функционал устройства, так нещадно ограниченный яблоневодами. К их сожалению (да и к моему тоже) список дополнительных девайсов для яблочных огрызков весьма мал, зато стоимость зато весьма высока. Напрягает отсутствие полноценного USB-подключеия и файлового менеджера. Хоть разработчики и утверждают, что при...



Яндекс.Метрика
Сайт работает на быстром VPS/VDS хостинге от FASTVPS