Frog33r
Lieutenant
- Registriert
- Jan. 2011
- Beiträge
- 654
Hallo,
der folgende Code verändert Dateinamen in einem Ordner zu dem Ordnernamen und einer hochzählenden Nummer. Leider werden die Dateien mehrmals umbenannt und erst dann springt das Script zum nächsten Ordner.
Kann mir jemand sagen, woran das liegt?
(http://suche.administrator.de/forum/Dateien-nach-Ordner-umbenennen-168485.html)
Gruß
Frog33r
der folgende Code verändert Dateinamen in einem Ordner zu dem Ordnernamen und einer hochzählenden Nummer. Leider werden die Dateien mehrmals umbenannt und erst dann springt das Script zum nächsten Ordner.
Kann mir jemand sagen, woran das liegt?
Code:
@echo off
setlocal
set "SrcDir=E:\test"
for /f "delims=" %%d in ("%SrcDir%") do set "ParentDir=%%~nxd"
for /f "delims=" %%f in ('dir /b /a:-d "%SrcDir%" 2^>NUL') do (
set "Item=%%~xf"
call :ConcatString Extensions
)
for %%e in (%Extensions%) do (
set /a Cntr=1
set "Ext=%%e"
for /f "delims=" %%f in ('dir /b /o:-s /a:-d "%SrcDir%\*%%e" 2^>NUL') do (
set "File=%SrcDir%\%%f"
call :RenameFile
set /a Cntr+=1
)
)
exit /b
:RenameFile
ren "%File%" "%ParentDir%-%Cntr%%Ext%"
exit /b
:ConcatString
call set "Compare1=%%%1%%"
call set "Compare2=%%%1:%Item%=%%"
if "%Compare1%" neq "" if "%Compare1%" neq "%Compare2%" exit /b
call set "%1=%%%1%% %%Item%%"
exit /b
(http://suche.administrator.de/forum/Dateien-nach-Ordner-umbenennen-168485.html)
Gruß
Frog33r