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

FOR Schleife - endet

Frage Entwicklung Batch & Shell

Mitglied: wm-is06

wm-is06 (Level 1) - Jetzt verbinden

11.07.2007, aktualisiert 17:53 Uhr, 3308 Aufrufe, 4 Kommentare

es sollen aber weitere Befehle ausgeführt werden

Hallo zusammen;
ich hab folgendes Problem bei einem Batchjob:
in einer Schleife werden IP Adressen ausgelesen und nacheinander gepingt um zu überprüfen ob der PC on- oder offline ist. Ist einer der PC's offline so wird dessen IP in ein seperates textfile gespeichert.
Meine Idee ist, dass nachdem alle Hosts durchlaufen sind, nachfolgend eine zweite Schleife startet, die die "nicht erreichbaren" Hosts (--> sep. Textfile) solange pingt, bis sie wieder online sind (mit entsprechender Protokollierung, damit ich später feststellen kann, wielange dieser Host offline war).
Im Prinzip funkt. alles wunderbar bis plötzlich (hab keine Ahnung was ich "verbrochen" habe) der Batchjob nach der ersten Schleife endet und die nachfolgenden Befehle ignoriert...

Ich habe wirklich viel gegoogelt - doch leider bin ich nicht fündig geworden.

Besten dank für die Hilfe!


Die Schleife selber sieht so aus:
01.
setlocal EnableDelayedExpansion 
02.
for /F "tokens=1,2" %%i in (targets.txt) do (  
03.
ping /n 1 /w 150 %%i >/nul 
04.
if !errorlevel! EQU 0 ( 
05.
echo %%i	%%j		ONLINE		%date% um %time%>>%output% 
06.
		)  
07.
 
08.
if !errorlevel! NEQ 0 ( 
09.
echo %%i	%%j		OFFLINE		%date% um %time%	XXX>>%output% 
10.
echo %%i  >> %target2% 
11.
12.
)
Mitglied: 50496
11.07.2007 um 17:25 Uhr
Warum so umständlich?

if errorlevel 1 (echo ..... usw. offline) else (echo ... usw. online)

Wenn du mehrzeilig schreiben willst, lies dir in der Windows-Hilfe den Kommentar bei if zur else-Anweisung durch.

Nachtrag:
Den Aufruf nach for packst du in eine Subroutine:

for /F "tokens=1,2" %%i in (targets.txt) do call :irgendwas
goto :eof

:irgendwas
if errorlevel 1 usw.
Bitte warten ..
Mitglied: wm-is06
11.07.2007 um 17:30 Uhr
Danke für die Antwort;
Mag sein, daß das nicht der allerbeste Stil ist und kompliziert aussieht - aber ich denke, dass das nicht das Problem an der Sache ist.
Ich versteh nicht, warum der ganze Job endet, wenn die Schleife fertig ist... keine nachfolgenden Befehle werden ausgeführt....
Bitte warten ..
Mitglied: 50496
11.07.2007 um 17:47 Uhr
Lies meinen Nachtrag, ich war noch beim Edit.
Bitte warten ..
Mitglied: wm-is06
11.07.2007 um 17:53 Uhr
das Problem hat sich erledigt, als ich den Rechner neu gestartet hab...

Beste Grüße
Wolfgang
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Abfrage ERRORLEVEL springt aus der FOR Schleife (8)

Frage von Galindiesel zum Thema Batch & Shell ...

Batch & Shell
gelöst Warum funktioniert das echo in meiner for-Schleife auch mit Sonderzeichen? (9)

Frage von Pedant zum Thema Batch & Shell ...

Windows Server
Windows Server 2012R2 Automatische-Reparatur Schleife - NEU (46)

Frage von hans-tu-was zum Thema Windows Server ...

Batch & Shell
gelöst Dateinamen auslesen und in einer Schleife benutzen (12)

Frage von TeholBeddict zum Thema Batch & Shell ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Netzwerke
LAN2LAN Verbindung sehr langsam flaschenhals gesucht (27)

Frage von PixL86 zum Thema Netzwerke ...

LAN, WAN, Wireless
Rogue Access Point (20)

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

Webbrowser
Windows 7 unbeliebte Internetseite sperren (13)

Frage von Daoudi1973 zum Thema Webbrowser ...

E-Mail
Fake E-Mail in Outlook für Demonstartionszwecke (12)

Frage von sascha382 zum Thema E-Mail ...