如果声明!=不起作用

时间:2018-05-16 12:58:25

标签: batch-file if-statement

我需要对我的代码进行另一次评估

if %programtorun% != "" (
    echo test
    pause
) else if %foundbootable% (
    set oserrorcode=1
) else (
   set computererrorcode=2
   goto error
)
if %programtorun% == init.lua (
   set foundbootable=true
)

我不知道我做错了什么。如果您需要更多详细信息,请询问。

1 个答案:

答案 0 :(得分:5)

您无法在批处理文件中使用!=。需要注意的第二件事是空间。

!=被重写为IF NOT <first>==<second>(也可以使用NEQ,这是第二个选项,但NOT已经更长,并且不需要任何额外的工作)。

我冒昧地重写你的代码,现在它应该适合你:

if NOT "%programtorun%"=="" (
    echo test
    pause
) else if "%foundbootable%"=="false" (
   set "oserrorcode=1"
) else (
    set "computererrorcode=2"
    goto :error
)
if "%programtorun%"=="init.lua" (
   set "foundbootable=true"
)