У меня возникла проблема с длинными однострочными текстовыми файлами, когда дело доходит до их разбора в пакетном режиме, в частности с ограничением символов 1024, потому что я устанавливаю переменную в качестве содержимого файл, и он будет захватывать только 1024 из первых символов.Анализ одного выровненного текстового файла и его разделение разделителями
Я хочу разбить мой текстовый файл на заданный разделитель (я использую ~ как мой разделитель) на новую строку и вывести результаты в другой текстовый файл. Файл ближайшие будет выглядеть так:
line1~line2~line3~line4~etc~
Все пути, например, до 5000 символов. Я хотел бы, чтобы результаты выглядеть следующим образом:
line1~
line2~
line3~
line4~
etc~
Вот мой текущий код:
@echo off
set /p input=<input.txt
call :parse "%input%"
pause
goto :eof
:parse
setlocal
set var=%~1
for /F "tokens=* delims=~" %%a in ("%var%") do (
if not "%%a" == "" call :splitVar "%%a"
if not "%%b" == "" call :parse "%%b"
)
endlocal
pause
goto :eof
:splitVar
setlocal
echo %~1
set filename=%~1
goto :eof
Есть ли способ преодолеть ограничение в 1024 символов или каким-то образом, чтобы разобрать его таким образом?
Кроме того, дайте мне знать, если этот вопрос противоречит правилам. Я вроде как новый для stackoverflow.
Существует немного кривой обучения, но вы рассмотрели использовать что-то вроде [PowerShell] (https://technet.microsoft.com/en-us/scriptcenter/powershell.aspx), что значительно более мощный, чем командная оболочка? –