vbscript um mehrere IP Adressen bzw ein Subnet zu pingen
um zu sehen welche Rechner in einem Subnet antworten, setzt dieses Beispielscript einen ping auf alle Adressen ab und liefert das Ergebnis zurück.
Aufrufen in der Eingabeaufforderung über cscript pingsubnet.vbs (Sonst wird bei jedem erfolgreichen Pingversuch ein Fenster geöffnet)
Hier der Inhalt der pingsubnet.vbs:
Quellcode:
On Error Resume Next
Netz = InputBox ("Bitte Netz eingeben z.B. 192.168.0",,"x.x.x")
for j=1 to 254
strTarget=Netz & "." & j
Set objShell = CreateObject("WScript.Shell")
Set objExec = objShell.Exec("ping -n 1 -w 1000 " & strTarget)
strPingResults = LCase(objExec.StdOut.ReadAll)
If InStr(strPingResults, "empfangen = 1") Then
WScript.Echo strTarget & " antwortet."
Else
' WScript.Echo VbCrLf & strTarget & " did not respond to ping."
End If
Next
({{pro_count}})
Beitrag bewerten:{{percentage}} % positiv
({{con_count}})
DANKE für deine Bewertung!
Fragen / Kommentare
(sortiert nach Bewertung / Datum) [alle Kommentare(neueste zuerst)]
Tag/Monat mit führender Null auf zwei (oder mehr) Stellen erweitern: ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ Oftmals benötigt man eine "führende Null" in Datums (Monat oder Tag). Die Funktion LZ ' LeadingZero erledigt das: Function LZ(val, digits) LZ=Right(String(digits,"0") & val, digits) ' wenn nur 1 Stelle breit, wird/werden eine/mehrere 0 davor gesetzt. End Function ' über den Parameter digits, lässt sich die Anzahl der Gesamtstellen bestimmen: also 3=001 oder 5 = 00001 · Zum Einsatz kommt das Script z.B., wenn man das aktuelle Datum in einen Zahlenstring verwandeln will: Tag=LZ(day(date),2) Monat=LZ(month(date),2) Jahr=year(date) Wscript.Echo Jahr & Monat & Tag ' ergibt für heute z.B. 20210530 * Mit datepart lässt sich dies auch bewerkstelligen, z.B. wscript.echo datepart("m",date) ' nur den Monat auslesen Monat2=datepart("m",date) Monat2=LZ(Monat2,2) wscript.echo Monat2 User: Micha
User: Jürgen SendKey ("^C") kopiert doch nur das Ergebnis in den Zwischenspeicher (entspricht CTRL + C) oder was ist der Effekt?
User: Dennis Hallo zusammen, wie setzt man ein SendKey? Wie muss das Script angepasst werden, dammt es sich nicht gleich schließt? Vielen Dank
User: Joachim Das Script ist gut, es wurde aber vergessen ein SendKey ("^C") zu setzen was dann zu leichten Irritationen führt.