В вашем коде есть некоторые причуды (взятые из вашего комментария):
ren
не поддерживает пути в части назначения - только filename.ext.
С for /r
, %%a
дает полное имя файла (диск, путь, имя, расширение), поэтому _new%%a
приводит к неправильному FQFN (например, _New_C:\folder\subfolder\file.txt
)
Вы можете получить подстроки needes с модификаторами (объяснено в for /?
)
Незначительные улучшения:
ставьте кавычки вокруг любого пути или имени файла
переключился на другой синтаксис перенаправления для команды echo
, чтобы избежать конечных пробелов.
@echo off
set "$New_line=Your text"
for /R "C:\folder\" %%A in (*.txt) do (
> "%%~dpANew_%%~nxA" echo %$New_line%
type "%%A" >> "%%~dpANew_%%~nxA"
del "%%A" 2>nul
ren "%%~dpANew_%%~nxA" "%%~nxA"
)