以下是我想创建10个文件的代码,如果计数器达到10但是比较不起作用我错过了什么或者我做错了什么?它只创建一个文件,并在该文件中打印如下
10 == 0 set
@echo off
set limit=10
set count=0
:start
set count = %count% + 1
echo %limit% == %count% set > YouAreAnIdiot%random%.txt
if %count%==%limit%
exit 0
else
goto start
答案 0 :(得分:2)
一行中有两个错误:count
:
a)=
和%count %
之间的空格是变量名称的一部分。 (这将是set
)
b)要使用/a
进行计算,您需要set /a count=%count% + 1
参数:
set /a
令人惊讶的是,=
并不关心额外的空间,而是习惯了set /a
周围没有空格的语法 - 这可以简化生活。
set /a count=count+1
不需要带变量的百分号,因此set /a count+=1
也有效。
有一个简短的表格可以做到:
if
此外,您的if %count%==%limit% (
exit 0
) else (
goto start
)
声明无效。完整的构造必须在一条(逻辑)线上:
{{1}}
(注意那些parantheses周围的空间 - 它们是至关重要的)