Você deseja o comando FOR /L
. Por exemplo:
C:\>SET num=7
C:\>FOR /L %I IN (1, 1, %num%) DO @echo %I
1
2
3
4
5
6
7
Observe que você precisa dobrar o sinal de porcentagem de lead em um arquivo de lote. Então, para o seu loop de extração de CD:
FOR /L %%n IN (1, 1, %CDNumTot%) DO (
SET FileName=%PathName%\%BookName% CD %%n.mp3
...
)
Se estiver com dificuldades, tente colocar o seguinte em um arquivo em lote e ver se funciona:
@ECHO OFF
SET num=7
FOR /L %%I IN (1, 1, %num%) DO @echo %%I
Tente isso para uma solução completa:
@ECHO OFF
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
REM set /p BookName="Book Name: "
REM set /p AuthorName="Author Name: "
REM set /p CDNumTot="Total number of CDs: "
set BookName=Victory and Honor
set AuthorName=W.E.B. Griffin
set CDNumTot=8
set PathName=C:\Rip\%AuthorName%\%BookName%
REM mkdir "C:\Rip\%AuthorName%\%BookName%\"
REM cd C:\Program Files (x86)\freac
ECHO CD Count: %CDNumTot%
FOR /L %%N IN (1, 1, %CDNumTot%) DO (
ECHO Please Eject CD and insert next CD# %%N...
pause
SET FileName=%PathName%\%BookName% CD%%N.mp3
ECHO Filename: !FileName!
ECHO.
ECHO Ripping CD# %%N...
ECHO freaccmd -track all -o "!FileName!"
ECHO CLS
ECHO.
ECHO.
)