[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 applba 于 2011-9-23 12:15 编辑

对于 for /f "options" %%i in (set) do (cmds)

for命令中的 逗号 分号 空格 tab 等号 都是分隔符,如果是in和do后面的括号还可以使用 回车(换行)符号 做分隔符。

for命令的参数存在二次转义:
(1)cmd.exe在读取时,"options"参数的必须作为一个整体传送到for命令。因此,其中的空格、分号、等号、回车符号都必须转义,否则"options"将被截断为多个部分分次传递到for命令,导致出错。转义的方式可以是使用双引号连续,也可以是使用尖号逐个转义。当然了。如果的"options"中没有这些特殊符号,自然不需要任何转义的。如: for /f "usebackq" %%i in (set) do (cmds)  
(2)for命令之后会对传递过来的参数"options"进行自行解析,依据是关键字(tokens,delins等)和分隔符。上面转义过的空格、分号、等号、回车符号再次成为特殊符号,用于分割参数。

TOP

返回列表