"Die Syntax des Befehls ist falsch."

"Die Syntax des Befehls ist falsch."

Ich habe eine neue Funktion für mein Batch-Spiel entwickelt, die dem Benutzer die Möglichkeit gibt, den Namen seiner eigenen Sicherungsdatei zusammen mit dem Ladesystem festzulegen. Das neue Speichersystem funktioniert ab sofort ordnungsgemäß.

Allerdings gibt das Programm beim Testen des neuen Codes die Meldung „Die Syntax des Befehls ist falsch.“ aus und stürzt ab.

:load2
cls
color E
echo Warning: Spaces not allowed!
set /p load2=File: 
set ext1=.sav   
set ext2=.bat
cls
echo Loading Save File...
ping localhost -n 1 >nul
if exist %load2%%ext1%
if not exist %load2%%ext1% goto :nosave
ping localhost -n 2 >nul
ren %load2%%ext1% %load2%%ext2%
call %load2%%ext2%
ren %load2%%ext2% %load2%%ext1%
cls
color A
echo Game loaded.
ping localhost -n 2 >nul
cls
if %saver%=player1 goto :p1sturn
if %saver%=player2 goto :p2sturn

Vielen Dank fürs Lesen, jeder, der teilgenommen hat, wird in den Credits für die Unterstützung bei cod aufgeführt

Antwort1

==>if exist x
The syntax of the command is incorrect.

Der Fehler wird durch verursacht if exist %load2%%ext1%. Entfernen Sie es vollständig: es ist überzählig, gefolgt vonif not exist %load2%%ext1% goto :nosave

Ein weiterer Fehler:

==>if player1=player1 echo x
=player1 was unexpected at this time.

Die richtige Syntax (beachten Sie Anführungszeichen und doppeltes =Gleichheitszeichen):

if "%saver%"=="player1" goto :p1sturn
if "%saver%"=="player2" goto :p2sturn

verwandte Informationen