GOTO возвращает неправильный синтаксис - PullRequest
0 голосов
/ 12 февраля 2019

Я пытаюсь создать фрагмент кода, который запускает кучу эхосигналов для отображения текста, который ждет в течение секунды, затем меняет цвет текста и фона командной строки на случайный, с интервалом в полсекунды и возвращаетсяв начале, но он проверяет, выполнил ли он уже эхо, поэтому он сразу переходит к изменению цвета, так что он делает это дважды, но говорит, что синтаксис команды для goto: z (строка 18) недопустим, иЯ не могу понять, почему это не работает.Код выглядит следующим образом:

set a=0
set HEX=0123456789ABCDEF
:a
rem (Echoes here)
if %a%==0 goto :c 
if %a%==1 goto :b
:c
@TIMEOUT /T 1 /NOBREAK >null
goto :b
:b
if %a%==0 goto :x
if %a%==1 goto :y
:x
set /a "a=1"
goto :z
:y
set /a "a=0"
goto :z
:z
if %a%==1
goto :f
if %a%==0
goto :g
:f
ping 127.0.0.1 -n 1 -w 500> nul
set /a rand1=%random% %% 16
set /a rand2=%random% %% 16
call set hexcolors=%%HEX:~%rand1%,1%%%%HEX:~%rand2%,1%%
color %hexcolors%
:g
goto :a

строка 28 изначально была if %a%a(...), но она была исправлена ​​на if %a%(...).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...