我尝试使用for循环并逐行读取文件的内容
该文件是一个xml
并包含由<>
我正在使用以下代码
set @LOGFILE=F:\nircmd\hosts.xml
:loop
for /F "tokens=2-3 delims=<>" %%a in (%LOGFILE%)do echo "it works"
timeout /t
goto :loop
批次在遇到for循环后立即终止
我已经尝试暂停或超时批处理 但似乎没什么用 批次无论如何终止
该怎么办?
答案 0 :(得分:1)
那是因为没有变量LOGFILE
;您将变量命名为@LOGFILE
。因此for
循环遇到错误,因为它找不到要读取的文件,并且诸如这些错误会终止批处理文件。所以要么使用
for /F "tokens=2-3 delims=<>" %%a in (%@LOGFILE%)
或
set LOGFILE=F:\nircmd\hosts.xml