我正在编写一个Windows CMD批处理文件,该文件(为简化目的)应该回显此文件的每一行:
Flash
your
lights
on
and
off
问题出在第四个和第六个单词,会导致运行
echo on
和echo off
,但实际上并没有将文本输出,而是仅仅设置了echo的状态为ON和OFF。for /F %%a in (DataFile.txt) do echo %%a
输出结果如下:
Flash
your
lights
and
有没有一种方式可以直接输出文本 on
和 off
?
echo(%%a
(这种语法看起来很奇怪,但是这是唯一安全的方法来逐字输出每个文本,甚至包括/?
)... - aschipflecho(%%a
,您仍然会遇到空行或以;
开头的行的问题,它们将被删除。当启用延迟扩展时,!
和有时^
符号也会被删除。解决这两个问题的方法是Jonas的答案。 - jeb