![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Разбить файл по N строк |
|
CMD/BAT - Разбить файл по N строк
|
Новый участник Сообщения: 27 |
Здравствуйте, как можно разбить файл по N строк?
Допустим у меня файл, где 100млн строк, надо разбить его на файлы по 10млн строк, последний файл может быть меньше (если кол-во не позволяет) Находил BAT и PowerShell, но они слишком медленно работали... |
|
Отправлено: 19:33, 22-01-2023 |
Ветеран Сообщения: 7317
|
Профиль | Отправить PM | Цитировать Цитата Asdshka:
Цитата Asdshka:
![]() На крайняк, можно попросить фрилансеров написать улититу на С++ PowerShell: gc file.txt -readcount 1000 | ForEach-Object { $i=0 } { $_ | Out-File "new_file${i}.txt"; $i++} file.txt - исходный многострочный файл, который нужно разделить на несколько с меньшим количеством строк; 1000 - число строк в каждом файле на выходе; new_file${i}.txt - маска для имени файлов на выходе, вместо ${i} будет инкремент числа от 0 и далее. |
||
------- Последний раз редактировалось dmitryst, 22-01-2023 в 19:48. Отправлено: 19:36, 22-01-2023 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Crazy Сообщения: 1235
|
Профиль | Отправить PM | Цитировать Цитата Asdshka:
measure-command{ $fld = '.\test' $fin = 'test.txt' $max = 10000000 $reader = [io.streamreader]::new($fin) $i,$n = 0,1 if (!(test-path $fld -patht 'Container')){$null = md $fld} while ($reader.peek() -ne -1) { $fout = $fld + '\' + $n + '.txt' $writer = [io.streamwriter]::new($fout) while ($i -lt $max){ $writer.writeline($reader.readline()) $i++ if ($reader.peek() -eq -1){$i = $max} } $i = 0 $n++ $writer.dispose();$writer.close() } $reader.dispose();$reader.close() } результат скорости: Цитата:
|
||
------- Отправлено: 23:04, 22-01-2023 | #3 |
Ветеран Сообщения: 7317
|
Профиль | Отправить PM | Цитировать YuS_2, да, таки ваш шворц быстрее
![]() |
------- Отправлено: 08:59, 23-01-2023 | #4 |
fascinating rhythm Сообщения: 6705
|
Профиль | Отправить PM | Цитировать |
|
------- Отправлено: 13:09, 23-01-2023 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - разбить файл на несколько по условию или по фильтру | shadowbat | Скриптовые языки администрирования Windows | 8 | 22-09-2022 15:33 | |
CMD/BAT - Разбить файл (столбцы) на 3 файла (больше 100000 строк) | paulomyaulo | Скриптовые языки администрирования Windows | 5 | 01-04-2022 19:13 | |
CMD/BAT - Разбить тхт файл не только по строкам, но и по папкам | Abricosio | Скриптовые языки администрирования Windows | 23 | 13-07-2018 20:39 | |
CMD/BAT - [решено] разбить файл на много файлов по шаблону и каждый файл положить в папку | Mezolick | Скриптовые языки администрирования Windows | 3 | 03-02-2017 08:38 | |
CMD/BAT - [решено] разбить/разделить файл по количеству строк | shmel_sv@vk | Скриптовые языки администрирования Windows | 3 | 15-01-2015 21:07 |
|