The idea is moving Files to Folders Like :
The Files Names:
1.pdf,2.pdf,3.pdf.....1000.pdf
And the results have to be:
(1.pdf-100.pdf) To Folder 1
(101.pdf-200.pdf) To Folder 2
(201.pdf-300.pdf) To Folder 3
..
This Code is working but it start with (0) and not (1)
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
for %%a in (*.pdf) do (
echo %%~na|FINDSTR /R /C:"^[0-9]*$" >nul 2>nul&&(
set /a NumBas=%%~na/1000*1000
set /a NumHaut=^(%%~na/1000*1000^)+999
echo %%~a -^> !NumBas!-!NumHaut!
IF NOT EXIST "!NumBas!-!NumHaut!" MD "!NumBas!-!NumHaut!"
MOVE /Y "%%~a" "!NumBas!-!NumHaut!\%%~a" >nul
)
)
Simpler:
@echo off
setlocal EnableDelayedExpansion
for %%a in (*.pdf) do (
set /A "Num=(%%~Na-1)/100+1, NumBas=(Num-1)*100+1, NumHaut=Num*100"
IF NOT EXIST "!NumBas!-!NumHaut!" MD "!NumBas!-!NumHaut!"
MOVE /Y "%%~a" "!NumBas!-!NumHaut!\%%~a" >nul
)
If you want folders with simpler "Folder 1", "Folder 2", etc names, just use "Folder !Num!"
and eliminate NumBas and NumHaut variables.