批处理 - If / Else / If *** echo

时间:2015-01-15 10:39:16

标签: batch-file

我正在制作游戏"批量生产,我找不到我的问题的正确答案。

我想要实现的目标是:

如果钱=> 10个
回声你是成功的 和
从%money%中删除10

如果金钱=< 10个
呼应你的成功

现在我有:

if %money% = GRT THN 10 (
  echo You are successful
  set %money% -= 10
) else (
  echo You are not successful
)
pause nul>

如果可以回答,我们将不胜感激。我显然是新手,可以真正使用帮助。

2 个答案:

答案 0 :(得分:1)

如果要对变量执行数学运算,则必须使用SET /A

@ECHO OFF
REM  enter start value here
SET /A money=20
IF %money% GEQ 10 (
    SET /A money=%money%-10
    ECHO You are successful
) ELSE ECHO You are not successful!

有关详细信息,请查看以下内容:http://ss64.com/nt/set.html

此外,请考虑使用%var%来访问var的值。 SET /a var = 123var的值设置为123。因此SET%var%= 321意味着您尝试将321分配给var,表示123 = 321。这显然是不存在的。 请记住:使用SET variable = value 存储值,%variable% 提取值。 永远不要在表达式的左侧组合SET和%。

答案 1 :(得分:-1)

If money = > 10 echo You Are Successful and remove 10 from %money%

If money  < 10 echo You Aren't Successful     ( no equal to here )