【发布时间】:2014-06-12 19:44:21
【问题描述】:
所以我的批处理代码应该一个一个地打印出一串数字。我的问题是它似乎卡在第一个字母中。我有(我相信)一个操作命令来删除字符串的第一个数字,但它似乎不起作用。例如,如果 info.txt 为 12345678,则 :loop 会卡在 1 中。
:floop
for /F %%G IN ('TYPE info.txt') DO call :line1 %%G
goto :end
:line1
set /a cnt+=1
set /a div=%cnt% %% 2
if %div% == 0 call :line2 %1
goto :EOF
:line2
set ord=%1
echo %ord%
pause
:loop
pause
set var=%ord%
set char=%var:~0,1%
set var=%var:~1%
echo %char%
if NOT %var%==_end goto loop
goto floop
:end
【问题讨论】:
-
查看延迟环境变量扩展的 Set 命令帮助。要实际使用它,请参阅 setlocal 命令。
标签: loops variables batch-file for-loop