Обрезать txt файл с помощью cmd?

Я хотел бы обрезать текстовый файл, хранящий около 240000 строк. Я хочу обрезать его каждые 1000 строк и сохранить как новый текстовый файл и назвать его по порядку.
@echo off
setlocal enableDelayedExpansion

set "src=result3.txt"

:: Redirect input to the source file
call :main "%src%" <"%src%"
exit /b


:main

::Get number of lines in file
for /f %%N in ('type "%src%"^|find /c /v ""') do set cnt=%%N

::Get first line to use as header for each file
set "header="
set /p "header="

set /a fileNum=1, lineNum=0
 :loop
  :: Exit if done
  if !lineNum! geq !cnt! exit /b

  :: establish zero padded numeric suffix
  set "suffix=000!fileNum!"
  set "suffix=!suffix:~-4!"

  >"%~n1_!suffix!%~x1" (
    echo(!header1!
    for /l %%N in (1 1 1000) do if !lineNum! lss !cnt! (
      set /a lineNum+=1
      set "ln="
      set /p "ln="
      echo(!ln!
    )
  )
  set /a fileNum+=1
  goto :loop

Но выходят странные, и зачастую пустые файлы,
например:
4

3

3
  • Вопрос задан
  • 486 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы