GOTO in FOR-Schleife funktioniert nicht
Hallo zusammen,
ich habe ein Script, dass über den Zugriff auf die config.sys die Erreichbarkeit mehrerer Server prüft.
Dazu verwende ich eine FOR-Schleife, innerhalb der auf Sprungmarken verwiesen wird:
Ist der Server erreichbar (also die Datei vorhanden), bekomme ich im Log den Eintrag
Ist die Datei nicht vorhanden, bekomme ich jedoch
Ich verstehe nicht, warum der Sprung zum Ende (Zeile 4) nicht funktioniert... weiß jemand Rat?
Gruß
Larz
ich habe ein Script, dass über den Zugriff auf die config.sys die Erreichbarkeit mehrerer Server prüft.
Dazu verwende ich eine FOR-Schleife, innerhalb der auf Sprungmarken verwiesen wird:
for /f %%i in (servers_connected.ini) do (
IF EXIST \\%%i\c$\CONFIG.SYS GOTO :ERREICHBAR
@ECHO Server: %%i nicht erreichbar>>"%LogfilePath%\servercheck.log"
goto :ENDE
:ERREICHBAR
@ECHO Server: %%i OK>>"%LogfilePath%\servercheck.log"
:ENDE
)
Ist der Server erreichbar (also die Datei vorhanden), bekomme ich im Log den Eintrag
Server: SERVERNAME OK
Ist die Datei nicht vorhanden, bekomme ich jedoch
Server: SERVERNAME nicht erreichbar
Server: SERVERNAME OK
Server: SERVERNAME OK
Ich verstehe nicht, warum der Sprung zum Ende (Zeile 4) nicht funktioniert... weiß jemand Rat?
Gruß
Larz
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 145998
Url: https://administrator.de/forum/goto-in-for-schleife-funktioniert-nicht-145998.html
Ausgedruckt am: 22.12.2024 um 19:12 Uhr
2 Kommentare
Neuester Kommentar
Hallo @Larz,
deine Überschrift sagt es ja schon,
macht aber auch nichts, denn deine Art das goto zu benutzen erzeugt allseits ungeliebten Spaghetti-Code.
Es gibt andere, besser lesbare Konstrukte mit Klammern.
Gruß
LotPings
deine Überschrift sagt es ja schon,
macht aber auch nichts, denn deine Art das goto zu benutzen erzeugt allseits ungeliebten Spaghetti-Code.
Es gibt andere, besser lesbare Konstrukte mit Klammern.
for /f %%i in (servers_connected.ini) do IF EXIST \\%%i\c$\CONFIG.SYS (
@ECHO Server: %%i OK>>"%LogfilePath%\servercheck.log"
) Else (
@ECHO Server: %%i nicht erreichbar>>"%LogfilePath%\servercheck.log"
)
Gruß
LotPings