: unerwartet war in dieser Zeit
Ich bin erstellen Sie eine bat-Datei, die ein paar grundlegende Funktionen für die server-builds. Das Skript ist etwas interaktives. Dies erlaubt uns, auf das Skript für die Produktions -, Dev-oder QA. Der Bereich des Skripts nicht, dass ist unter
echo Enter User-defined Information about this Server:
echo Environment:
echo 1. PROD
echo 2. QA
echo 3. Dev
echo Choose one:
CHOICE /C 123
if errorlevel 1 (set ENVIRONMENTNAME=PROD & set ENVNAME=Production)
if errorlevel 2 (set ENVIRONMENTNAME=QA & set ENVNAME=Acceptance)
if errorlevel 3 (set ENVIRONMENTNAME=Dev & set ENVNAME=Development)
Einmal bin ich aufgefordert, "Wählen Sie Eine Option:" ich wähle eine der beiden Optionen, dann die Fehlermeldung erhalten:
: war unerwartet zu diesem Zeitpunkt.
- nicht fail für mich. Ich denke, das ist nur eine Teilmenge der Skript, als würde ich erwarten, dass ein "echo off" auf der ersten Zeile des Skripts.
- Das Skript selbst funktioniert für mich. Was kommt nach der errorlevel Zeug?
- Der rest des Skripts ist wie folgt:
- Nvm. Ich bemerkte, wo das problem liegt, aber es scheint zu Zeiten arbeiten, dann andere Zeiten ist es nicht
- Also, wo ist das problem?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entfernen Sie die
@echo off
oderecho off
Befehle von der Spitze des Skripts (oder hinzufügenecho on
), und verwenden Sie die resultierende Ausgabe zum Debuggen die Zeile bewirkt, dass die beanstandeten Fehler.Zur Optimierung Zwecke, setzen Sie Ihre
if errorlevel
Befehle in absteigender Reihenfolge. Dieif errorlevel
Befehl ausgelöst wird, wenn dieERRORLEVEL
ist die angegebene Zahl oder höher.if errorlevel
um brechen Sie dieses script, es sei denn, Sie fügenelse
sMerke ich, das ist eine ziemlich verspätete Antwort, aber ich habe gerade erlebt, genau die gleiche Fehlermeldung, obwohl es war ein "set /p" verursacht wurde das problem für mich. Die Linie war ursprünglich:
und die Lösung, die ich fand, Bestand darin, die doppelten Anführungszeichen um die Eingabeaufforderung text, also:
Weiß nicht, ob das jemand hilft oder nicht, aber es löste das problem für mich 🙂