回复 31# miss_sokuber
图片命名规则:第一个字符是0,第二个字符是0,1,2,3,4这五个文件夹其中一个的名称+1,然后接3个0,最后一个字符是从0开始顺延的自然数,结果是:0(数字文件夹名称+1)0000,0(数字文件夹名称+1)0001...,
新创建文件夹命名:attack,dead,hit,run,stand,
attack包括0,1,2,3,4下面的a
dead包括0,1,2,3,4下面的d
hit包括0,1,2,3,4下面的h
run包括0,1,2,3,4下面的r
stand包括0,1,2,3,4下面的s- @echo off
- setlocal enabledelayedexpansion
- for %%i in (attack dead hit run stand) do (
- set "s=%%i" & set "s=!s:~0,1!"
- set "_!s!=%%i"
- )
- REM 查找png文件,其上一级目录名为a、d、h、r、s,上上一级目录名为数字0-4
- for /f "delims=" %%i in ('dir /b /a-d /s *.png ^| findstr /i "\\[0-4]\\[adhrs]\\[^\\]*$"') do (
- REM 当前png文件所在的目录
- set "curPath=%%~dpi"
- if /i "!prePath!" NEQ "!curPath!" (
- REM png文件的上上一级目录
- for %%j in ("%%i\..\..") do set /a n = "(%%~nj + 1) * 10000"
- for %%j in ("%%i\..") do (
- set "newFolder=!_%%~nj!"
- md "%%i\..\..\..\!newFolder!" 2>nul
- )
- ) else (
- set /a n+=1
- )
- REM 前一个png文件所在的目录
- set "prePath=%%~dpi"
- move "%%i" "%%i\..\..\..\!newFolder!\0!n!%%~xi"
- )
- REM 删除空目录
- for /f "delims=" %%i in ('dir /b /ad /s ^| sort /r') do rd "%%i" 2>nul
- pause
复制代码
|