This one could turn out as the dumbest question ever, as I am probably missing out the obvious. Anyway, here it is: Can you evaluate expressions in a batch script. For example, I want to add two numbers and print the result:

echo 4+2

This will just print "4+2", not "6". Maybe I am taking batch scripting on windows a little bit too far...

Thanks!

link|improve this question

67% accept rate
feedback

2 Answers

up vote 5 down vote accepted

This way:

Set /a 4+2

Or to store it in a variable for later:

Set /a foo = 4+2
echo %foo%

And to answer your last line, there is a good chance that you may be pushing batch a little further than intended. The Windows Script host is available on your machine and would allow VBScript or JScript. Also if you are going to learn something new anyway I would highly suggest using Powershell instead.

link|improve this answer
that's echo %foo% – Bob Aug 28 '09 at 15:42
Oops...fixed. Thanks. – EBGreen Aug 28 '09 at 15:45
feedback
set Result=0

echo start %Result%

echo Adding 4 and 2
set /a Result= 4+2

echo finish %result%

pause >nul
link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.