質問: ファイル名からフォルダを自動作成し振り分けたいです。 例えばですが、フォルダの中にある AA_01_01 AA_01_02 ZZ99a ZZ99b
回答: 希望のファイルがある場所にバッチファイルを置いて、バッチファイルへ希望のファイルをドラッグ&ドロップ。 setlocal enabledelayedexpansion for %%i in (%*) do ( echo %%~ni| findstr /r "_.*[0-9]$">nul if errorlevel 1 ( echo %%~ni| findstr /r "[a-z]$">nul && ( set STR1=%%~ni set STR1=!STR1:~,-1! if not exist "!STR1!\" md "!STR1!" move "%%i" "!STR1!\" ) ) else ( call :SUB "%%~nxi" ) ) exit /b :SUB set STR2=%~n1 :LOOP if not "%STR2:~-1%"=="_" ( set STR2=!STR2:~,-1! goto LOOP ) set STR2=%STR2:~,-1% if not exist "%STR2%\" md "%STR2%" move %1 "%STR2%\" exit /b