在for循环中将两个数字相加

时间:2013-03-15 16:13:47

标签: batch-file

好的,所以我正在创建一个简单的批处理文件,用于从文本文件中获取行,然后将输出通过管道传输到wget并下载它们(使用Windows端口)。我唯一的问题是在for循环中为数字添加一个数字。

SETLOCAL ENABLEDELAYEDEXPANSION
set sum=0
%ECHO% "Reading %1... "

for /f "eol=# tokens=* delims= " %%a in (%1) do ( 
    echo %%a | bin\wget -q %%a
    SET /a sum=%sum%+1
    echo Hit:%sum% %%a 
)

%ECHO% "Done!"
ENDLOCAL

它被称为'call read_line.bat myfile.txt

是的,我知道我可以使用wget -i myfile.txt,但我宁愿不使用它并控制其他东西(输出和明显的HIT:函数)

1 个答案:

答案 0 :(得分:2)

尝试使用!代替% sum,以便真正使用延迟扩展:

for /f "eol=# tokens=* delims= " %%a in (%1) do ( 
  echo %%a | bin\wget -q %%a
  SET /a sum=!sum!+1
  echo Hit:!sum! %%a 
)