使用Batch重命名名称中包含模式的多个文件夹

时间:2013-12-04 14:52:08

标签: windows batch-file cmd

我在一个目录下有100个文件夹,并以模式命名。 例如:DeDeP001M1TSub,DeDeP002M1TSub,...,DeDeP100M1TSub。

我正在寻找命令行选项来重命名所有文件夹。我只想将M1改为M2,因为DeDeP001M1TSub变为DeDeP001M2TSub。我知道可以执行此操作的第三方应用程序,但我正在寻找一个命令行选项,以便在bat文件中使用以及其他一些东西。请帮忙(相当新的地区)!!

到目前为止已尝试过ren,mv但没有效果(不熟悉dos脚本)。

1 个答案:

答案 0 :(得分:2)

这应该这样做:

@echo off
setlocal enabledelayedexpansion

for /d %%a in (*) do (
  set "p=%%a"
  set "fp=!p:~0,8!" & set "tp=!p:~10!"
  echo ren %%a !fp!M2!tp!
)

验证输出是您要进行实际重命名后,删除回声。