Нельзя использовать !=
в пакетных файлах.Второе, на что следует обратить внимание, это пробелы.
!=
переписывается как 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"
)