Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mehrere Schleifen verlassen

Frage Entwicklung Batch & Shell

Mitglied: 84544

84544 (Level 1)

20.02.2010, aktualisiert 22:32 Uhr, 3368 Aufrufe, 3 Kommentare

Ich habe folgendes Problem. Und zwar habe ich mehrere call's und for-Schleifen in einer Batchdatei.
Und zwar werden die Schleifen nie richtig beendet habe ich so im Gefühl.

Deshalb möchte ich sozusagen die Schleife "vollständig" beendet und mit dem nächsten fortfahren.

zum Beispiel (funktioniert so in einer bat):
Das Programm wählt von 10 Servern zufällig einen raus, der erreichbar ist und setzt ihn in einer Variable.

AM BESTEN wäre wenn hier jemand weis wie man einzelne Teile einer große BATCH sozusagen als eine kleine BATCH behandeln kann.

:neutest
set /a r=%random%%%10+1
for /f "tokens=%r%" %%p in ('echo server1, server2, server3, server4, ......') do for %%i in (%%p) do set "server=%%i" & call :checkserver

:checkserver
ping -n 1 -w 1 %server% | find /i "TTL=" && (set var=%server) && goto naechstes || (goto neutest)
goto :eof

:naechstes
.........

Wie kann ich die FOR-Schleife "vollständig" beenden? Oder was ich auch noch wissen wollte, ob und wie kann ich das zusammenfassen?

for ....... do (
ping usw.
)
Das klappt leider nicht....


PS: Ich will keinen Counter drin haben... und das sollte zufällig bleiben. Mit Counter das könnte ich selbst.
Mitglied: bastla
20.02.2010 um 23:06 Uhr
Hallo Marci3xXx!

Ungetestet etwa so:
01.
:neutest 
02.
set /a r=%random%%%10+1 
03.
set "var=" 
04.
for /f "tokens=%r%" %%p in ("server1 server2 server3 server4 .....") do ping -n 1 -w 1 %%p | find /i "TTL=">nul && set "var=%%p" 
05.
if not defined var goto :neutest 
06.
.....
Grüße
bastla
Bitte warten ..
Mitglied: 84544
23.02.2010 um 15:03 Uhr
Ich habs jetzt anders gemacht.....

call :erstens
call :zweitensa
call :zweitensb
call :drittens
.....
exit

:erstens
for .................. call: intern1
:intern1
code bla
goto :eof


:zweitensa
for .................. call: intern2
:intern2
code bla
goto :eof

:zweitensb
for .................. call: intern2
:intern3
code bla
goto :eof

usw.


Klappt soweit ganz gut. Ich habe dann immer nur eine Schleife pro call gemacht
Bitte warten ..
Mitglied: bastla
23.02.2010 um 17:57 Uhr
Hallo Marci3xXx!
Klappt soweit ganz gut.
Freut mich.

Was war das Problem mit meinem Ansatz?

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
LAN, WAN, Wireless
Mehrere Hardware Firewalls (10)

Frage von cerberus90 zum Thema LAN, WAN, Wireless ...

VB for Applications
gelöst Excel VBA Eine oder mehrere Zellen Verschieben (2)

Frage von batchnewbie zum Thema VB for Applications ...

VB for Applications
gelöst Mehrere Charts per VBA erstellen lassen, Titel wird nicht angezeigt

Frage von Aximand zum Thema VB for Applications ...

Batch & Shell
Mehrere.csv Dateien zusammenfügen zu einer Datei mit bat (4)

Frage von Piotrney zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...