批量重命名 - 父文件夹 + 文本 + 每个目录的递增数字

批量重命名 - 父文件夹 + 文本 + 每个目录的递增数字

我正在尝试构建一个批处理文件,它将对某个位置的所有子目录执行重命名,格式为“父目录文件名”,后跟下划线,后跟“4 位递增数字”(每个目录的新数字计数)。例如 ABCDEF_0001、ABCDEF_0002 等。我目前使用 Windows 软件执行此操作,但希望能够将其作为批处理文件运行。

非常感谢!

编辑-如果可能的话,使用 bat 文件中的地址而不是拖放。

答案1

请检查这是否符合预期:

在此处输入图片描述

您必须将父文件夹拖放到批处理文件中...

@echo off
if exist "%~1" (if not exist "%~1\" exit) else (exit)

set Parent=%~nx1
pushd "%~1"

for /f "delims=" %%a in ('dir /b /ad') do call :Edit "%%a"
exit

:Edit
set /a Counter+=1
set CounterZ=000%Counter%
set CounterZ=%CounterZ:~-4%
ren "%~1" "%Parent%_%CounterZ%"
goto :EOF

相关内容