Klammern innerhalb eines ECHO - Befehls ausgeben
HAllo,
ich versuche gerade eine Batch - Abfrage zu erstellen. Innerhalb dieser Abfrage wird ein Text mit Klammern ausgegeben. Dies führt zu dem Problem, dass die schließende Klammer als Ende des Else - Zweiges erkannt wird. Wie kann ich das beheben ?
So sieht die Abfrage z.Zt. aus:
if %res2% EQU 0 (
ECHO Verbindung zum Server wurde hergestellt.
ECHO .
Goto :Update
) ELSE (
ECHO Es konnte keine Verbindung zum Server hergestellt werden.
ECHO Starte OpenVPN (in einem neuen Prozess).
ECHO .
Goto :OpenVPN
)
Goto :EOF
Das Problem ist die schließende Klammer hinter "Prozess". Hier wird dann das Ende des Else - Zweiges erkannt. Die Fehlermeldung lautet dann: "." ist syntaktisch an dieser Stelle nicht verarbeitbar.
Ich weiß das ich den Fehler beseitigen kann in dem ich z.B. andere (eckige) Klammern nehme, oder den Text halt ohne runde Klammern ausführe.
Aber es geht ums Prinzip: Ich möchte wissen wie es auch mit runden Klammern geht.
Kann jemand weiterhelfen?
Danke.
ich versuche gerade eine Batch - Abfrage zu erstellen. Innerhalb dieser Abfrage wird ein Text mit Klammern ausgegeben. Dies führt zu dem Problem, dass die schließende Klammer als Ende des Else - Zweiges erkannt wird. Wie kann ich das beheben ?
So sieht die Abfrage z.Zt. aus:
if %res2% EQU 0 (
ECHO Verbindung zum Server wurde hergestellt.
ECHO .
Goto :Update
) ELSE (
ECHO Es konnte keine Verbindung zum Server hergestellt werden.
ECHO Starte OpenVPN (in einem neuen Prozess).
ECHO .
Goto :OpenVPN
)
Goto :EOF
Das Problem ist die schließende Klammer hinter "Prozess". Hier wird dann das Ende des Else - Zweiges erkannt. Die Fehlermeldung lautet dann: "." ist syntaktisch an dieser Stelle nicht verarbeitbar.
Ich weiß das ich den Fehler beseitigen kann in dem ich z.B. andere (eckige) Klammern nehme, oder den Text halt ohne runde Klammern ausführe.
Aber es geht ums Prinzip: Ich möchte wissen wie es auch mit runden Klammern geht.
Kann jemand weiterhelfen?
Danke.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 136577
Url: https://administrator.de/contentid/136577
Ausgedruckt am: 05.11.2024 um 07:11 Uhr
2 Kommentare
Neuester Kommentar
Moin kevindifi,
da die runden Klammen im Batch zu den "Sonderzeichen mit spezieller Bedeutung" gehören müssen sie -wenn sie als normale Buchstaben ohne spezielle Bedeutung gemeint sind mit einem Caret ("^") maskiert werden.
Also
Angezeigt werden die Carets dann natürlich nicht bei der Ausgabe.
Grüße
Biber
da die runden Klammen im Batch zu den "Sonderzeichen mit spezieller Bedeutung" gehören müssen sie -wenn sie als normale Buchstaben ohne spezielle Bedeutung gemeint sind mit einem Caret ("^") maskiert werden.
Also
...
....
ECHO Starte OpenVPN ^(in einem neuen Prozess^).
....
Grüße
Biber