Batch - Echo or Variable Not Working

I have this little batch script:

SET @var = "GREG"
ECHO %@var%
PAUSE

When I run it, it prints:

H:\Dynamics>SET @var = "GREG"


H:\Dynamics>ECHO
ECHO is on.


H:\Dynamics>PAUSE
Press any key to continue . . .

Why won't it print the contents of @var? How do I know if @var is even being set?

257858 次浏览

Dont use spaces:

SET @var="GREG"
::instead of SET @var = "GREG"
ECHO %@var%
PAUSE

Try the following (note that there should not be a space between the VAR, =, and GREG).

SET VAR=GREG
ECHO %VAR%
PAUSE