我有 100 个连续的 PNG 文件,用于一个启动动画。但是他们之间有不同的步骤
示例: 1、4、5、10、14、15、16、19...
使用Ant Renamer就足够了,它是一个很好的应用程序,但我喜欢用带有批处理文件的旧黑屏来做。
谁能给我一个想法,如何将它们从 1 重命名为 100 以保留序列的顺序?
我有 100 个连续的 PNG 文件,用于一个启动动画。但是他们之间有不同的步骤
示例: 1、4、5、10、14、15、16、19...
使用Ant Renamer就足够了,它是一个很好的应用程序,但我喜欢用带有批处理文件的旧黑屏来做。
谁能给我一个想法,如何将它们从 1 重命名为 100 以保留序列的顺序?
保存为批处理文件并以文件夹路径作为参数调用。默认处理当前文件夹
@echo off
setlocal enableextensions disabledelayedexpansion
rem - Set folder to be processed
set "folder=%~1"
if not defined folder set "folder=%cd%"
rem - Prepare work environment
pushd "%folder%" & setlocal enabledelayedexpansion
rem - Load file list into array with number padding
for /f %%a in ('dir /b /a-d "*.png"^|findstr /i /r /x /c:"[0-9]*\.png"') do (
set /a "n=100000000+%%~na"
set "n[!n!]=%%a"
)
rem - Retrieve the list from memory and, for each element in the
rem array, rename the file to the correct name
set "n=1"
for /f "tokens=2 delims==" %%a in ('set n[') do (
set "name=000!n!"
echo ren "%%a" "!name:~-3!.png"
set /a "n+=1"
)
rem - Cleanup
endlocal & popd
endlocal