使用文件夹名称和序列号批量重命名文件 – 发送到菜单

我有一个名为销售的文件夹。 我在该文件夹中有imgxy.jpg,imgab.jpg等。 当我右键单击销售文件夹,并发送到rename.bat文件(我已经将rename.bat文件复制到c:\文件和设置\用户名\发送到 )我想销售文件夹中的文件更改为sales1。 jpg,sales2.jpg等这个行为应该是我发送给这个.bat文件的东西。 以下代码昨晚在Windows 7上正常工作。 现在我是Windows XP的SP3,它的工作。 它试图重命名文件夹中的文件* c:\文件和设置\用户名*

请帮助下面的rename.bat文件代码

@ECHO OFF setlocal enabledelayedexpansion set foldername=%1 for %%i in (%bar%) do set bar=%%~ni FOR /D %%# in (%bar%) DO ( PUSHD "%%#" FOR %%@ in ("*") DO ( set /a "inc+=1" Echo Ren: ".\%%~n#\%%@" "%%~n#!inc!%%~x@" Ren "%%@" "%%~n#!inc!%%~x@" ) POPD ) 

Solutions Collecting From Web of "使用文件夹名称和序列号批量重命名文件 – 发送到菜单"

测试这个 – 它接受一个文件夹,而不是文件,但是你提到了你的问题中的文件夹。

不要把它称为rename.bat因为rename是一个内部命令。

 @ECHO OFF setlocal enabledelayedexpansion PUSHD "%~1" set inc=0 FOR /f "delims=" %%a in ('dir /b /a-d') DO ( set /a inc+=1 Echo Ren: "%%a" "%~n1!inc!%%~xa" Ren "%%a" "%~n1!inc!%%~xa" ) POPD