批量读取文件

时间:2012-02-19 21:56:14

标签: batch-file

我找到了这个例子here

@echo off
setLocal EnableDelayedExpansion

for /f "tokens=* delims= " %%a in ("GEN 0 GENERAL.html") do (
echo do my commands on %%a
pause
)
pause

我应该逐行阅读文件。我的目标是阅读和打印整行,而不仅仅是一个或两个令牌。对我来说,这不起作用。知道为什么吗? 我得到了这个输出: 在GEN 0 GENERAL.html上执行我的命令 按任意键继续......

解决:

@echo off
setLocal EnableDelayedExpansion

for /f "tokens=* delims= usebackq" %%a in ("GEN 0 GENERAL.html") do (
echo do my commands on %%a
pause
)
pause

1 个答案:

答案 0 :(得分:2)

usebackqtokens选项之后,将delims添加到您的选项列表中:

  

"tokens=* delims= usebackq"

正如你所写的那样,文件名周围的双引号会导致它被解释为一个字符串(而不是包含字符串的文件的名称)。