[CMD] Добавить слово в каждую строку текстового файла

monowar

Постоянный участник
Сообщения
347
Реакции
482
Нужно добавить слово или цифры в начало каждой строки текстового файла . Поискал в инете - большинство советов сделать через текстовой редактор.
Хотелось бы это сделать через bat . Попробовал сделать сам , поискал в инете - получился такой bat
@echo off
(for /f "delims=" %%i in ('type test.txt') do echo Привет^("%%i"^) %%i)>test-out.txt
( Слово Привет для примера), но файл test-out.txt создаётся ,но пустой .
И ещё пронумеровать строки в текстовом файле с помощью такой конструкции bat -файла можно ?
 
Последнее редактирование:
Какой формат текста у текстового файла (ANSI / OEM / Unicode (UTF-8 / 16) ?
Какая макс. длина строк?
Какой объем файла?
И ещё пронумеровать строки в текстовом файле с помощью такой конструкции bat -файла можно ?
можно.
 
Формат ANSI И UNICODE
Мах длина строк - затрудняюсь потому-что разная в разных файлах
Обычно не большие до 20 kb
 
Обработка одного такого файла займёт секунд 5.
По-другому, лучше реализовывать на другом языке. Могу предложить VBS или VB6.
 
CMD/BATCH:
@echo off
SetLocal EnableExtensions

set src=test.txt
set dst=test2.txt
set "PREFIX=Привет - "

del "%dst%" 2>NUL
for /f "UseBackQ delims=" %%a in ("%src%") do >> "%dst%" echo %PREFIX%%%a

pause

set src=test2.txt
set dst=test3.txt

del "%dst%" 2>NUL
set n=0
for /f "UseBackQ delims=" %%a in ("%src%") do set /a n+=1 & >> "%dst%" call echo %%n%%. %%a

pause

Первая часть пакетного файла добавляет префикс, вторая нумерацию (можно скомбинировать в одном цикле.)
Для юникода потом напишу код. Можете поискать пример перекодировки. Здесь в закрепленной теме было.
 
И что, сколько времени заняла обработка 1 файла?
 
Назад
Сверху Снизу