BAT для переноса и переименования файлов

palarmaz
На сайте с 05.04.2010
Offline
125
775

Знающие, помогите доделать батник. Есть 30 папок с разными названиями, а в каждой папке 1 файл, его надо переименовать в такое же имя как у папки, и положить их все (файлы) в нужную папку например result.

Нашел код, но он создает файлы без расширения. Как добавить к названию файлов расширение .xml ?

set folder1=C:\folder1

set folder2=C:\result
if not exist "%folder2%" (md "%folder2%")
goto start
:fn1
for /f "delims=" %%i in ('dir %1 /a-d /b') do (ren "%~1\%%i" "%~2" & move "%~1\%~2" "%folder2%\")
::удаление папок если надо del /f /q %1
exit /b
:start
for /f "delims=" %%i in ('dir "%folder1%" /ad /b') do call :fn1 "%folder1%\%%i" "%%i"
yet_warm
На сайте с 26.05.2007
Offline
129
#1

Как-то так вроде работает, подправить строчку: :)

for /f "delims=" %%i in ('dir %1 /a-d /b') do (ren "%~1\%%i" "%~2.xml" & move "%~1\%~2.xml" "%folder2%\")
Многие хотят попасть в рай, мало кто хочет для этого умирать.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий