使用bat文件连续编号文件

时间:2013-01-29 13:09:36

标签: windows batch-file dos

我有一个这个文件夹,我保存了所有的.ild文件。问题是它们都应该编号,我需要一个批处理脚本来执行此操作。

我将所有的ilds保存在ILDS文件夹中。

现在我在“ILDS”文件夹中有这3个文件:

09.ild
test.ild
s p a c e d.ild

我如何重命名它们,因此它们将被命名为:

1.ild
2.ild
3.ild

谢谢!

2 个答案:

答案 0 :(得分:0)

你可以循环它们并重命名它们

setlocal enabledelayedexpansion
set /a num=1
for %%a in (*.txt) do (
ren "%%a" "!num!%%~xa"
set /a num+=1
)

答案 1 :(得分:0)

@echo off
setlocal disableDelayedExpansion
pushd "c:\somePath\ilds"
set "N=0"
for %%F in (*.ild) do (
  set "file=%%F"
  setlocal enableDelayedExpansion
  set /a N+=1
  ren "!file!" "!N!.ildnew"
  endlocal
)
ren *.ildnew *.ild
popd

重命名必须分两步完成,因为给定的number.ild可能已经存在。

注意:脚本可以多次运行,但是一旦有10个或更多文件,每次运行时都会重新分配这些数字。换句话说,第一次命名为1.ild的文件在第二次运行后不会是同一个文件。