这是我的.bat遭遇逆境。让我们将其命名为b.bat
。
set loopnum=%1
set url=%2
del "%TEMP%\selectortemp.txt"
del "%TEMP%\selectortemp2.txt"
for /r %loopnum% %%i in (\*.*) do echo %%~ni%%~xi>>"%TEMP%\selectortemp.txt"
echo %loopnum%
pause
set count=0
for /f "usebackq delims=" %%a in (%TEMP%\selectortemp.txt) do set /a count+=1
set /a count2=1
:looping
for /f "tokens=1,2 delims==" %%a in (%config%) do (if %%a==url set url=%%b)
set /p firstline=<"%TEMP%\selectortemp.txt"
del "%url%\%firstline%"
echo "%firstline%"
pause
for /f "skip=1 tokens=*" %%A in (%TEMP%\selectortemp.txt) do echo %%A>>"%TEMP%\selectortemp2.txt"
del "%TEMP%\selectortemp.txt"
rename "%TEMP%\selectortemp2.txt" "selectortemp.txt"
if %count2%==%count% goto endlooping
set /a count2+=1
goto looping
:endlooping
首先,我称之为:
for /l %%i in (0,1,3) do (call b.bat %%i C:\testing)
答案 0 :(得分:0)
您对自己的问题并不十分具体。 我认为你的意思是你的变量在for循环中丢失了它们的内容。
你需要写!a!代替%。但是你不能用for循环中使用的变量来做这件事。 !! a是不可能的。
请务必启用延迟扩展。
以下是有关enabledelayedexpansion的一些信息:SS64