我发现这个命令用于循环当前文件夹中的所有目录:
FOR /D %G in ("assets\*") DO echo %G
当我将其输入CMD
时,它会起作用,但当我将其保存在test.bat
并运行该文件时,我得到:
C:\Projects>test.bat
G was unexpected at this time.
发生了什么?
答案 0 :(得分:2)
在批处理文件中,您必须使用%%
。这是因为单个百分比用于批处理文件和环境变量的命令行参数。解析器不是很好,所以我们必须转换for
变量的百分号。
第3段help for
中也记录了这一点:
要在批处理程序中使用FOR命令,请改为指定%%变量 %变量。