Я пытаюсь написать командный файл, который будет переименовывать каждый файл .txt в папке, в которой он находится, чтобы включить в имя отметку даты.Я получил его точно так же, как и должен, но когда я пытаюсь сделать то же самое с переименованием или xcopy, я получаю «Дублированное имя файла существует, или файл не найден».
Я новичок впартия, и я не могу понять, что здесь происходит.Может быть, небольшая проблема с синтаксисом?
@echo off
setlocal enabledelayedexpansion
goto :main
:main
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a
set YYYY=%dt:~0,4%
set MM=%dt:~4,2%
set DD=%dt:~6,2%
set HH=%dt:~8,2%
set Min=%dt:~10,2%
set Sec=%dt:~12,2%
set stamp=!YYYY!-!MM!-!DD!___!HH!:!Min!:!Sec!
echo !stamp!
echo.
FOR %%G IN (*.txt) DO (
echo going to rename %%~nxG
echo it will become !stamp!___%%~nxG
ren %%~nxG !stamp!___%%~nxG
echo.
)
pause
goto :eof