2016-04-19 63 views
1

我是新来的批处理文件,并有一个非常简单的问题,我所要做的就是通过设置的数量增加3个变量的值。无法增加多个变量的值

当我运行该文件时,变量'a'如预期增加,但变量'b'和'c'返回消息“命令的语法不正确”并回显原始值。

任何帮助,非常感谢。

@set a=0 
@set b=10 
@set c=100 

:1 
echo on 

echo Value of A = %a% +++++++++++++++++++++++++ 
echo Value of B = %b% +++++++++++++++++++++++++ 
echo Value of C = %c% +++++++++++++++++++++++++ 

set /a a=a+1 
set /b b=b+10 
set /c c=c+100 

goto 1 

exit; 

下面的图片是从显示的批处理文件输出CMD窗口:

CMD window output

+1

没有'设置/ B'也不'设置/ C',您需要国家'设置/ A'; '/ A'部分是一个开关,告诉'set'做算术运算(在命令提示符窗口中键入'set /?'并阅读帮助文本);你似乎混淆了变量名与变量名'A','B'和'C' ... – aschipfl

+2

所有这些都应该使用'set/a'。你犯了一个混淆变量名和交换机的错误。投票结束这个题目,因为这是一个简单的错字。 (为了将来的参考,您的整个图像可以作为一个简单的文本复制/粘贴,可以从命令窗口完成。图像应该只在没有其他方式证明问题时使用。 SO post](http://meta.stackoverflow.com/a/285557/62576)列出了为什么你应该避免使用图像的原因。) –

+0

非常感谢...评论指出... – Kim

回答

0

我猜你的新批次,所以我会很清楚。 set命令有三个选项:

/a = Math 
/p = Input 
nothing = set 

试试这个:

set /a a+=1 
set /a b+=10 
set /a c+=100