Batch file 文件重命名批处理脚本

Batch file 文件重命名批处理脚本,batch-file,file-rename,batch-rename,Batch File,File Rename,Batch Rename,我正在尝试重命名一堆文件,我可以手动重命名,也可以通过批处理脚本重命名。批处理脚本将非常简单 我需要脚本重命名文件夹中的所有文件,使其具有姓氏+索引。因此,输出看起来像sample1.exe,sample是姓氏,索引为1。我还需要在每个文件命名后增加这个索引,以避免重复。我在谷歌上搜索过,但知道的还不够多,无法把其中一个放在一起。有人有什么建议吗?如果没有文件名将包含在名称中,然后 @echo off setlocal enableDelayedExpansion set "surname=su

我正在尝试重命名一堆文件,我可以手动重命名,也可以通过批处理脚本重命名。批处理脚本将非常简单


我需要脚本重命名文件夹中的所有文件,使其具有姓氏+索引。因此,输出看起来像sample1.exe,sample是姓氏,索引为1。我还需要在每个文件命名后增加这个索引,以避免重复。我在谷歌上搜索过,但知道的还不够多,无法把其中一个放在一起。有人有什么建议吗?

如果没有文件名将包含
在名称中,然后

@echo off
setlocal enableDelayedExpansion
set "surname=surname"
set "index=0"
for %%F in (*) do (
  set /a "index+=1"
  ren "%%F" "!surname!!index!%%~xF"
)
如果文件名可能包含
然后

@echo off
setlocal disableDelayedExpansion
set "surname=surname"
set "index=0"
for %%F in (*) do (
  set "old=%%F"
  set "ext=%%~xF"
  set /a "index+=1"
  setlocal enableDelayedExpansion
  ren "!old!" "!surname!!index!!ext!"
  endlocal
)