Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] добавить в конце каждой строки txt файла название самого файла (http://forum.oszone.net/showthread.php?t=350048)

rwsct 14-11-2021 18:34 2971912

добавить в конце каждой строки txt файла название самого файла
 
Здравствуйте, прошу помощи.

Есть папка с множеством текстовых файлов. В каждом файле есть множество строк.
например файл 123.test.txt
с содержимым
aaa
bbb
zzz

Нужно обработать все файлы в папке, чтобы в конце каждой строки каждого файла прописывалось название файла (желательно без расширения)
Результат:
aaa.test
bbb.test
zzz.test

Помогите пожалуйста.

rwsct 14-11-2021 18:54 2971913

Нашел такой пример, но он делает не то что мне нужно

@echo off
for /f "delims=" %%a in ('dir/a-d/b "*.txt"') do <"%%a">$ (for /f "delims=" %%b in ('find /n /v ""') do @set "s=%%b"& cmd/v/c echo %%~na !s:*]=!)& move $ "%%a"
exit

он берет имя файла (без расширения) ставит его в начало строки и через пробел ставит исходную строку
Результат.
123.test aaa
123.test bbb
123.test zzz

megaloman 14-11-2021 19:53 2971925

Код:

@Echo Off
cls
        Set "BoxIn=Z:\Box_In"
        Set "Mask=*.txt"
        Set "Delim=."

        For /F "usebackq delims=" %%f In (`2^>nul Dir "%BoxIn%\%Mask%" /B /A:-D`) Do (
                For /F "usebackq delims=" %%s in (`type "%BoxIn%\%%f" ^& Del "%BoxIn%\%%f"`) Do (
                        >>"%BoxIn%\%%f" (Echo %%s%Delim%%%~nf)
                )
        )
pause
Exit /B


alpap 15-11-2021 05:01 2971951

Цитата:

Цитата rwsct
Нашел такой пример, но он делает не то что мне нужно »

похоже на мой "почерк". А догадаться поменять как надо - не судьба? Вы ведь учитесь чтобы понимать, а не искать каждый раз готовое, совпадающее на 100%, решение.
Код:

@echo off
for /f "delims=" %%a in ('dir /a-d/b "*.txt"') do <"%%a">$ (for /f "delims=" %%b in ('find /n /v ""') do @set "s=%%b"& cmd /v/c echo !s:*]=!.%%~na)& move $ "%%a"
exit



Время: 07:32.

Время: 07:32.
© OSzone.net 2001-