遍历文件夹批处理

Iterating through a folder batch

我对批处理有些陌生,我正在尝试构建一个批处理程序,将所有文件重命名为数字,但它不起作用,我不知道这里的问题是什么,希望有人能帮我找到。

@echo off
SET x=0
for %%I in (*) do(
SET /a x+=1
REN %%I %x%
)
pause

这个快点怎么样?

我提供了一个 if 条件来防止批处理重命名自己,以防您将它放在文件所在的同一目录中。 (例如,在测试时) 您可能想根据需要更改此设置...

numberize.bat

@ECHO OFF
SetLocal EnableDelayedExpansion

set /a x=0
for %%i in (*) do ( call :doit "%%i" )
goto eof

:doit
    if  /I %1 NEQ "numberize.bat"  (
        set  /a "x=x+1"
        ren %1 %x%
    )
    EXIT /B
:eof

EndLocal