@echo off
setlocal enableDelayedExpansion
set /a "counter=0"
set "cycle7zForw=273 256 192 128 96 64 48 32 24 16 12 8"
for /l %%N in (1 1 12) do (
set /a "counter+=1"
call :therest
)
set cycle
pause
exit
:therest
for /f "tokens=%counter%" %%i in ("%cycle7zForw%") do set cycle7zForw%%N=%%i
exit /b
如何设置一个变量来计算cycle7zForw
内的值的数量,然后将其放入for /l %%N in (1 1 %variable%) do (
在我的示例中,它计数为12,但我不想手动编写12,因为cycle7zForw
中可能有任意数量的值。
答案 0 :(得分:3)
你可以用不同的方法解决。
将空格替换为换行符 然后一个FOR / F循环遍历所有数字。
@echo off
setlocal enableDelayedExpansion
set /a "counter=0"
set "cycle7zForw=273 256 192 128 96 64 48 32 24 16 12 8"
set temp=!cycle7zForw: =^
!
for /f "delims=" %%i in ("!temp!") do (
set /a counter+=1
set cycle!counter!=%%i
)
set cycle