BATCH无法加入变量

时间:2018-06-01 06:16:43

标签: batch-file

我不知道我错在哪里。请帮忙!

if "House%Player1Block%==1" goto HouseEventP11
if "House%Player1Block%==2" goto HouseEventP12
echo.You landed on empty block. Claiming house.
echo.You now own block %Player1Block%.
set "House%Player1Block%=1"

错误是Goto此时出乎意料。

1 个答案:

答案 0 :(得分:2)

if "House%Player1Block%==1" goto HouseEventP11

如果语法为:if <value1> <comparator> <value2> command
 所以"House%Player1Block%==1"是value1,goto是比较器 - 等等 - 什么? goto不是比较器 - goto was unexpected at this time

正确的语法:

if "House%Player1Block%" == "1" goto :HouseEventP11

(注意:带goto :label的冒号是可选的,但我希望它与call命令一致,其中冒号必须调用标签(不带冒号,{ {1}}会尝试找到另一个批处理文件而不是标签))