Add folder name to beginning of filename - getting multiple renames
- by Flibble Wibble
I've used dbenham's excellent response to the question of how to add the folder name to the beginning of a filename in a cmd script.
@echo off
pushd "Folder"
for /d %%D in (*) do (
for %%F in ("%%~D\*") do (
for %%P in ("%%F\..") do (
ren "%%F" "%%~nxP_%%~nxF"
)
)
)
popd
What I'm finding is that seemingly randomly (though it probably isn't) sometimes the script will run through several child folders and rename correctly but then it gets to a folder where it gets stuck in a loop and starts adding the folder name repeatedly to the file inside. I have 90,000 files in 300 folders to rename this weekend. Any chance you can guess the cause?
PS: Is there a maximum number of files that are acceptable in each folder?