Top-Themen

Aktuelle Themen (A bis Z)

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 Ping und Errorausgabe per Batch?

Mitglied: donnerkai

donnerkai (Level 1) - Jetzt verbinden

18.11.2011, aktualisiert 18.10.2012, 11690 Aufrufe, 14 Kommentare

Hallo,

ich möchte gerne 4 verschiedene IP Adressen anpingen und das alle 3 Minuten.
Wenn keine Verbindung möglich ist, möchte ich einen Alarm in Form eines Popup oder ähnliches, ansonsten soll es im Hintergrund laufen.
Geht das per Batch?
Muss ich das Ergebnis des Ping in eine .tmp Datei schreibe und diese dann anschließend auslesen oder wie kann ich das lösen?
Bin für jeden Tipp dankbar
Mitglied: davidl
18.11.2011, aktualisiert 18.10.2012
So eine ähnliche Frage hatte ich auch mal

https://www.administrator.de/forum/ping-errorlevel-auswerten-bzw.-header ...

Die erste Antwort hat mir da sehr geholfen wie man einen Ping auswerten kann.

Lg David
Bitte warten ..
Mitglied: donnerkai
18.11.2011 um 09:09 Uhr
Komme ich nicht so richtig mit weiter. Ich komme auch mit der Syntax nicht klar.

Ich brauche quasi die Syntax für folgenden Klartest

wenn Suchstring "XYZ" in Datei "XYZ" vorhanden
dann Ausgabe "Fehler"
ansonsten goto nächster Schritt
Bitte warten ..
Mitglied: ITSchlumpf
18.11.2011 um 09:21 Uhr
Hi,

du kannst deine IP-Adressen in ein Textfile schreiben, dieses Auslesen und dann jede IP-Adresse anpingen und schauen ob ein errorlevel übergeben wird.

01.
SetLocal
02.
Set Rechner=rechner.txt
03.

04.
for /f %%r in (%Rechner%) do (call :ping %%r)
05.
goto :eof
06.

07.
:ping
08.
Set rechner=%1
09.
ping -n 1 %rechner%
10.
if %errorlevel%==0 (goto :eof) else (goto :error)
11.

12.
:error
13.
net send (Rechnername wo popup aufpoppen soll) Rechner %rechner% ist nicht erreichbar
14.

15.
:eof
Das script ist ungetestet, sollten fehler auftauchen, bischen ausprobieren und vll findest du den fehler ansonsten nochmal melden ;)

Gruß
Schlumpf
Bitte warten ..
Mitglied: donnerkai
18.11.2011 um 09:53 Uhr
Also funktioniert nicht, liegt aber wahrscheinlich an mir.
Ich komme mit der Syntax nicht klar.

Also... line 2 - Du holst Dir die Rechner IP aus der Datei rechner.txt. Diese habe ich angelegt und zunächst mit einer IP Adresse bestückt
line 4 eine FOR Schleife mit der Du die unterschiedlichen IP durchtickerst
line 7 verstehe ich nicht. müsste es dazu nicht dann auch einen goto :ping geben?

wie erfolgt die Trennung der verschiedenen IP Adressen in der Textdatei? Einfach immer eine neue Zeile?

Ich habe momentan keine Funktion mit dem Skript und egal was ich für eine IP eintrage auch keinen Rückgabewert.

Bitte warten ..
Mitglied: ITSchlumpf
18.11.2011 um 10:16 Uhr
Okay ich probier grad mal woran es liegt. Was für ein Betriebssystem nutzt du?

Gruß

[Edit] Zu deinen Fragen.

Zu der Schleife Line4 -> Der geht Zeile für Zeile die Variable Rechner durch und holt sich jedesmal die nächste IP-Adresse.
Line 7 -> Schau mal bei der Schleife. da habe ich ein "do call :ping %%r" mittels diesen befehls wird die subroutine ":ping" aufgerufen und der wert "%%r " wird mit übergeben.

01.
SetLocal
02.
Set "Rechner=rechner.txt"
03.

04.
for /f %%r in (%Rechner%) do (call :ping %%r)
05.
goto :eof
06.

07.
:ping
08.
Set rechner=%1
09.
ping -n 1 %rechner%
10.

11.
if %errorlevel%==0 (goto :eof) else (goto :error)
12.

13.
:error
14.

15.
net send rechnername aber nur wenn du xp nutzt da Win7 kein net send mehr hat
16.

17.
:eof
Also bei mir läuft das so durch. Falls es bei dir nicht geht, baue ein paar pausen an verschiedenen Stellen ein um zu sehen was für eine Meldung kommt bzw wo er stehen bleibt.

Gruß
Schlumpf

[/edit]
Bitte warten ..
Mitglied: potshock
18.11.2011 um 10:33 Uhr
Hi donnerkai,

schau mal hier auf meiner kleinen Page:
http://www.tackys-support.de/xptips.htm#N4
Aber ab Vista gibt es kein net send mehr, da musst du dann msg verwenden.

Potshock
Bitte warten ..
Mitglied: donnerkai
18.11.2011 um 11:16 Uhr
Ok, ich habe den Fehler gefunden. Er kann mir den net send Befehlt nicht schicken. Ich nutze allerdings XP und es sollte funktionieren.
Die Meldung sagt mir, dass mein Rechner nicht vorhanden sei oder die Verbindung getrennt sei.

Das Skript an sich arbeitet also gut.
Woran das mit meinem PC jetzt liegt weiss ich allerdings auch nicht.

msg funktioniert aus dem gleichen Grund nicht.
Bitte warten ..
Mitglied: potshock
18.11.2011 um 11:38 Uhr
Hi donnerkai,

ist denn der Nachrichtendienst überhaupt gestartet?
Ab Sp3 glaube ich war der deaktiviert worden bzw. Tools wie Xp Antispy etc. schaltete diesen auch häufig ab.
Ist der Nachrichtendienst eventuel durch eine Firewall geblockt?

Potshock
Bitte warten ..
Mitglied: donnerkai
18.11.2011 um 11:49 Uhr
Ok, ich habe es. Ich musste meinen Usernamen angeben und nicht den Rechnernamen. Dann funktioniert msg


Danke! Wunderbar gelöst
Bitte warten ..
Mitglied: ITSchlumpf
18.11.2011 um 12:17 Uhr
Bitte gerngeschehen Helfen ja gerne.

Gruß und schönes Wochenende

ITSchlumpf
Bitte warten ..
Mitglied: donnerkai
18.11.2011 um 12:29 Uhr
Jetzt läuft es und schwupps habe ich schon neue Begehrlichkeiten

Ich möchte gerne, dass die Datei immer wieder neu durchläuft. Das Skript habe ich entsprechend geändert. Geht das so:

SetLocal
Set Rechner=rechner.txt
:start
for /f %%r in (%Rechner%) do (call :ping %%r)
goto :eof
:ping
Set rechner=%1
ping -n 1 %rechner%
if %errorlevel%==0 (goto :start) else (goto :error)
:error
msg %username% Rechner %rechner% ist nicht erreichbar


Wie kann ich feststellen ob es noch läuft und vor allem wie kann ich es wieder beenden?
Ich möchte die Datei gerne auch an Kollegen weitergeben und habe deshalb den Usernamen als Variablenabfrage hinterlegt.

Kann ich das noch mit Batch lösen oder muss ich da schon auf eine Programmiersprache umsteigen ?
:eof
Bitte warten ..
Mitglied: ITSchlumpf
18.11.2011 um 12:38 Uhr
Benutze bitte wenn du Code hier reinschreibst die Textformatierung <.code><./code> (ohne Punkt)

Richte dir doch einfach nen Task ein der alle x Minuten die batch aufruft und laufen lässt. Ansonsten musst ne endlosschleife bauen.

01.
:set
02.
SetLocal
03.
Set Rechner=rechner.txt
04.
:start
05.
for /f %%r in (%Rechner%) do (call :ping %%r)
06.
goto :set
07.
:ping
08.
Set rechner=%1
09.
ping -n 1 %rechner%
10.
if %errorlevel%==0 (goto :start) else (goto :error)
11.
:error
12.
msg %username% Rechner %rechner% ist nicht erreichbar 
13.
:eof
Ungetest

Zum beenden gehst halt in das Batchfenster und drückst STRG-C dann bricht er ab.
Das könntest du dir aber eben mittels Taskplaner ersparen, da dieser sobald der PC aus ist ja nicht mehr läuft.

Gruß
Schlumpf
Bitte warten ..
Mitglied: donnerkai
18.11.2011 um 12:56 Uhr
Also ich hätte es ja gerne so, dass nur die Fehlermeldung sichtbar ist und der Rest unsichtbar läuft. Somit könnte ich ja dann auch nicht mehr ins Batch Fenster und STRG + C geht auch nicht.


ich nerve schon, gell?
Bitte warten ..
Mitglied: ITSchlumpf
18.11.2011 um 13:03 Uhr
Nö nervst nicht ^^
Wenn du es so haben willst, dann lege dir im Taskplaner einen Task an, weil der startet die Batch ohne das du es siehst und dann bekommst du immer nur die Fehlermeldungen.
Stoppen kannst du die Batch dann über Taskplaner -> task stoppen.
Die Batch händisch starten und dann silent weiter laufen lassen, habe ich keine Ahnung wie das geht sry.

Gruß
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch Ping Anfrage
Frage von kirox317Batch & Shell

Moin, ich habe eine Routine (Batch) geschrieben, die eine sehr lange Liste an IP-Adressen abarbeitet. Diese werden dann nach ...

Batch & Shell
Batch Ping Parameter
gelöst Frage von kirox317Batch & Shell8 Kommentare

Guten Tag, ich habe eine Routine in Batch geschrieben, die eine sehr Liste an IP-Adressen abarbeitet. Diese werden dann ...

Batch & Shell
Ping script batch
gelöst Frage von ThePommesBudeBatch & Shell4 Kommentare

Hallo, ich habe hier ein kleines script geschrieben, dass die IP adressen Pingen soll und zurück geben soll, ob ...

Batch & Shell
Batch Programm (Ping funktion)
gelöst Frage von MedicalAdBatch & Shell1 Kommentar

Servus Leute, ich versuche ein Batch Pprogramm zu schreiben das die Eingabe des Users Pingt. Ich habe es auch ...

Neue Wissensbeiträge
Internet

Kommentar: Bundesregierung erwägt Ausschluss von Huawei im 5G-Netz - Unsere Presse wird immer sensationsgieriger

Information von Frank vor 1 TagInternet5 Kommentare

Hier mal wieder ein schönes Beispiel für fehlgeleiteten Journalismus und Politik zugleich. Da werden aus Gerüchten plötzlich Fakten, da ...

Windows 10

Netzwerk-Bug in allen Windows 10-Versionen durch Januar 2019-Updates

Information von kgborn vor 1 TagWindows 101 Kommentar

Nur ein kurzer Hinweis für Admins, die Windows 10-Clients im Portfolio haben. Mit den Updates vom 8. Januar 2019 ...

Windows 10

Windows 10 V1809: Rollout ist gestartet - kommt per Windows Update

Information von kgborn vor 2 TagenWindows 102 Kommentare

Eine kurze Information für die Admins, die Windows 10 im Programm haben. Microsoft hat die letzte Baustelle (die Inkompatibilität ...

Sicherheit

Heise Beitrag Passwort-Sammlung mit 773 Millionen Online-Konten im Netz aufgetaucht

Information von Penny.Cilin vor 2 TagenSicherheit6 Kommentare

Auf Heise Online ist folgender Beitrag veröffentlicht worden: Heise Beitrag passwörter geleakt Ich bin mir jetzt nicht ganz sicher, ...

Heiß diskutierte Inhalte
TK-Netze & Geräte
TAPI auf einem Win2016Server installieren und einrichten
Frage von wstabelTK-Netze & Geräte32 Kommentare

Hallo liebe Admins, ich habe folgende Situation: 1 Windows Server 2016 Standard als DC 1 SNOM 710 IP-Telefon 1 ...

Batch & Shell
Mit findstr batch doppelte zeilen einer txt löschen
Frage von Burningx2Batch & Shell25 Kommentare

Hi Vor einer weile habe ich im netzt einen windows shell befehl gefunden mit welchem man über die konsole ...

Microsoft
Übertragung von MS Volumenlizenzen
Frage von SherlockineMicrosoft20 Kommentare

Ich bin Angestellte in einer kleinen 10-köpfigen IT-Firma, die Netzwerklösungen, Telefonielösungen und Ähnliches anbietet. Im Sommer hatten wir einen ...

Windows 10
Robocopy Quelle und Ziel vertauscht Daten gelöscht ?
Frage von eastclintwoodWindows 1020 Kommentare

Hallo, ich wollte Daten von einer extrernen Festplatte (USB) auf eine interne Platte per robocopy sichern. Leider habe ich ...