Microsoft MVPs inside





 MCSEboard.de – IT Pro Forum zu Windows Server 2008 R2 / 2008 / 2003 & Windows 7 / Vista / XP
Registrieren Hilfe Regeln Benutzerliste Suchen Heutige Beiträge Alle Foren als gelesen markieren

Windows Forum — Scripting


Alles zum Thema System Administration Scripting — Q & A zum Thema Scripting: Batch, VBS, WMI, PowerShell


Antwort
     
Themen-Optionen
Alt 02.10.2007, 07:56   #1
Expert Member
 
Benutzerbild von lefg
 
Online
Registriert seit: 12-2003
Ort: Lübeck
Beiträge: 14.543
Ist ein, sind die Rechner im Netz present, Befehl ausführen

Hallo Gemeinde,

wieder einmal stehe ich vor einer Wand.

Es muss festgestellt werden, ob und welche Rechner eines 24-er Pools im Netz von Teacher aus erreichbar sind; falls ja, da soll eine Aktion ausgeführt werden.
Das Feststellen muß muss schnell und effektiv geschehen, Netview kommt nicht in Frage, ping erscheint als ein guter Weg, gibt aber leider keinen %errorlevel% zurück.
Die Ausgabe von Ping habe ich mittels Pipeline an FIND geleitet, "Empfangen = 1" ist ganz schön, dann verlässt es mich im Moment.
Code:
for /D %%i in (R214-PC23,R214-PC02,R214-PC03,R214-PC25) do (
ping -n 1 -w 1 %%i | find /C "Empfangen = 1")
So sieht es im Moment aus. Bei positiven Testergebnis soll SetACL ausgeführt werden.

Hat bitte jemand einen Tipp für mich?

Habt Dank für Aufmerksamkeit und Rat.

Edgar

Signatur
Das Messbare messen, das Nichtmessbare messbar machen. Galilei.

    Mit Zitat antworten
Alt 02.10.2007, 08:51   #2
Expert Member
 
Benutzerbild von lefg
 
Online
Registriert seit: 12-2003
Ort: Lübeck
Beiträge: 14.543
Der Satz gibt eine 1 oder 0 zurück, wie kann ich die aber auswerten?
Code:
ping -n 1 -w 1 R214-PC25 | find /C "Empfangen = 1"
Möglicherweise hilf mir das weiter.
Code:
ping -n 1 -w 1 R214-PC25 | find "0% Verlust" 
if %errorlevel% equ 1 echo 1
Das funktioniert schon mal, warum habe ich bloss den vorstehenden Quatsch gemacht?
Code:
ping -n 1 -w 1 R214-PC25 
if %errorlevel% equ 1 echo 1
So scheine ich dem Ziel nahe zu sein.
Code:
for /D %%i in (R214-PC24,R214-PC25) do (
ping -n 1 -w 1 %%i 
echo %errorlevel%
if %errorlevel% equ 0 echo Kein Verlust
)
Leider funktioniert das mit %errorlevel% nicht in der Schleife.

Ein neuer Weg.
Code:
ping -n 1 -w 1 R214-PC24 && echo kein verlust

pause

for /D %%i in (R214-PC24,R214-PC25) do (
ping -n 1 -w 1 %%i && echo kein verlust
)
pause

Geändert von lefg (02.10.2007 um 10:39 Uhr).

Signatur
Das Messbare messen, das Nichtmessbare messbar machen. Galilei.

    Mit Zitat antworten
Alt 09.10.2007, 15:05   #3
Senior Member
 
Benutzerbild von thumb
 
Offline
Registriert seit: 10-2003
Ort: Darmstadt
Beiträge: 370
Hallo lefg,

probiere es mal damit:

set host=%0\..\host.txt
for /f %%i in (%host%) do (ping -n 1 %%i | find "Antwort" > nul ) && (@echo %%i ist online >>%0\..\ResultOnline.txt) || (@echo %%i ist offline >>%0\..\ResultOffline.txt)
pause


ACHTUNG: Von for /f %% bis >>%0\..\ResultOffline.txt) ist es eine Zeile, also insgesamt sind es drei.

Das @echo musst Du dann durch den Befehl Deiner Wahl ersetzen.

Viele Grüße, thumb

PS: Ach ja, in der Datei HOST.TXT stehen die Rechner, die Du anpingen willst.
PSS: Noch was, je nach Sprache musst "Antwort" durch "Reply" ersetzen.
    Mit Zitat antworten
Alt 09.10.2007, 15:38   #4
Expert Member
 
Benutzerbild von lefg
 
Online
Registriert seit: 12-2003
Ort: Lübeck
Beiträge: 14.543
Hallo thumb.

ich danke für deine Antwort. Es wurde nun so gelöst; mit Verwendung der IP entfällt die Namensauflösung.
Code:
for /L %%i in (60,1,85) do (
ping -n 1 -w 1 192.168.1.%%i > Nul && copy c:\1SetACLPrint214.bat \\192.168.1.%%i\c$
)
pause
Gruß

Edgar

Signatur
Das Messbare messen, das Nichtmessbare messbar machen. Galilei.

    Mit Zitat antworten
Antwort


Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
2K8 - Befehl im Script als Administrator ausführen viragomann Windows Server Forum 10 24.02.2009 21:22
batch datei mit doppelklick ausführen / befehl wird nicht angenommen edocom Windows Forum — Scripting 3 15.06.2008 19:42
Befehl remote ausführen s21it21 Windows Forum — LAN & WAN 2 31.03.2006 13:29
Hilfe:Befehl Ausführen als... erscheint immer beim Ausführen von Programmen PADWOLF Windows Forum — Allgemein 2 17.07.2003 09:16
2K - xp-Rechner über w2k-Rechner ins Netz? Holle Windows Forum — LAN & WAN 3 09.02.2003 15:41


Alle Zeitangaben in MEZ/CET. Es ist jetzt 15:20 Uhr. Seite generiert in 0,031 Sekunden.

- Unsere Partner -

Copyright © 2000 – 2012 MCSEboard.de

Sprung zum Seitenanfang