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

Batch mit ping, die sich automatisch selbst beendet

Frage Entwicklung Batch & Shell

Mitglied: traller

traller (Level 1) - Jetzt verbinden

29.07.2014, aktualisiert 05.08.2014, 2420 Aufrufe, 12 Kommentare, 1 Danke

Hallo,
ich möchte eine Batch schreiben, die einen "ping IP -t" ausführt und sobald ein Wert in Millisekunden angezeigt wird, sich automatisch selbst beendet. Vorher kommen dann natürlich die Fehlermeldung "Zeitüberschreitung" und "Kein Host". Wie würde das gehen? Müsste ich da eine if-else Schnittstelle entwickeln?

Danke!!!
Mitglied: killtec
29.07.2014 um 14:33 Uhr
Hi,
wie wäre es anstelle eines -t ein -n 1 zu nehmen und dann den errorlevel abfragen?

Gruß
Bitte warten ..
Mitglied: traller
29.07.2014, aktualisiert um 14:46 Uhr
Zitat von killtec:
wie wäre es anstelle eines -t ein -n 1 zu nehmen und dann den errorlevel abfragen?


wohl nicht möglich. Es soll ein Computer per WOL gestartet werden und wenn er per Ping erreichbar ist, soll das Fenster einfach zu gehen, damit man weißt, das er den Bootvorgang beendet hat.
Bitte warten ..
Mitglied: killtec
29.07.2014 um 14:59 Uhr
Hast du denn schon was mit dem Script per WOL?
weil ein -t heißt ja nur, dass er das so lange macht. Du kannst das ganze was ich geschrieben habe ja in einer Schleife laufen lassen.

Sprich starten, Prüfen, Wenn Erfolgreich -> Beenden, wenn nicht, -> Zurück zum start. (geht recht schnell mit einer if und einem Sprungpunkt.

Gruß
Bitte warten ..
Mitglied: Sheogorath
30.07.2014 um 08:45 Uhr
Moin,

geht recht schnell:
01.
:Loop 
02.
ping -n 1 %host% 
03.
if %errorlevel% eq 0 Exit 
04.
goto :loop
Darüber schreibst du deinen WOL-Aufruf und schon passt es.

Gruß
Chris
Bitte warten ..
Mitglied: traller
02.08.2014 um 13:40 Uhr
Zitat von Sheogorath:

Moin,

geht recht schnell:
01.
:Loop 
02.
> ping -n 1 %host% 
03.
> if %errorlevel% eq 0 Exit 
04.
> goto :loop 
05.
> 
Darüber schreibst du deinen WOL-Aufruf und schon passt es.

Gruß
Chris
Deine Lösung scheint der richtige Weg zu sein. Aber welches Errorlevel ist denn das richtige ? wie frage ich das ab?
Bitte warten ..
Mitglied: Sheogorath
04.08.2014 um 01:48 Uhr
Hallöchen,

Genau das ist der Weg. Du willst, dass bei einem erfolgreichen Ping die Batch endet. Genau das macht sie. Erfolgreicher Ping ist Errorlevel 0 alles andere Errorlevel 1.

Gruß
Chris
Bitte warten ..
Mitglied: traller
04.08.2014, aktualisiert um 14:54 Uhr
Hallöle,
ich habe das mal so wie oben eingefügt und den host durch die IP ersetzt. Es muss aber das "eq" mit "==" ersetzt werden, sonst kommt Ausführen folgende Fehlermeldung:
01.
"eq" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
nun sieht es also wie folgt aus.
01.
:Loop 
02.
ping -n 1 192.168.6.5 
03.
if %errorlevel% == 0 exit 
04.
goto :loop
trotzdem stimmt was mit den Errorlevels nicht. der Schließt nämlich viel zu früh, nämich dann, wenn "Zielhost nicht erreichbar." angezeigt wird. Das kommt der Ping-Abfrage zwischendurch natürlich auch vor, nur schließt er dann zu früh ...
Bitte warten ..
Mitglied: Sheogorath
LÖSUNG 05.08.2014, aktualisiert um 16:01 Uhr
Moin,

stimmt, da war ja noch was ;)

eine verbesserte variante, die nun wirklich das richtige Errorlevel zur wirft:

01.
:Loop 
02.
ping -n 1 192.168.1.1 | find "TTL" 
03.
if %errorlevel% == 0 exit 
04.
goto :loop
Das sollte aber nun wirklich klappen. Hier wird nämlich die TTL (Time To Life) abgefragt, die nur bei wirklich lebendigen Paketen zurück kommt. wenn nicht, wird es nicht gefunden und läuft auf Fehler.

Gruß
Chris
Bitte warten ..
Mitglied: traller
05.08.2014 um 16:01 Uhr
Zitat von Sheogorath:

Moin,

stimmt, da war ja noch was ;)

eine verbesserte variante, die nun wirklich das richtige Errorlevel zur wirft:

01.
> :Loop 
02.
> ping -n 1 192.168.1.1 | find "TTL" 
03.
> if %errorlevel% == 0 exit 
04.
> goto :loop 
05.
> 
Das sollte aber nun wirklich klappen. Hier wird nämlich die TTL (Time To Life) abgefragt, die nur bei wirklich lebendigen
Paketen zurück kommt. wenn nicht, wird es nicht gefunden und läuft auf Fehler.

Gruß
Chris
danke, klappt nun wunderbar !!!
Bitte warten ..
Mitglied: traller
20.09.2014 um 21:45 Uhr
Hallo,
das Script funktioniert so weit sehr gut. Ich wollte nun den umgekehrten Weg machen, also es soll nun bei "Zielhost nicht erreichbar" und "Zeitüberschreitung der Anforderung" geschloßen werden. Soweit so gut, sollte das über
Zitat von traller:
nun sieht es also wie folgt aus.
01.
> :Loop 
02.
> ping -n 1 192.168.6.5 
03.
> if %errorlevel% == 0 exit 
04.
> goto :loop 
05.
> 
trotzdem stimmt was mit den Errorlevels nicht. der Schließt nämlich viel zu früh, nämich dann, wenn
"Zielhost nicht erreichbar." angezeigt wird.
also funktionieren. Problem ist aber nun: ich muss davor aber folgenden Befehl ausführen:
01.
plink.exe -pw Passwort Nutzer@IP sudo pm-suspend
Problem ist aber, dass wenn ich diesen Befehl in einer Batch ausführe, er nicht zu einem weiteren geht, da wohl nichts zurück geliefert wird etc. Sprich, es muss der Befehl ausgeführt werden und ohne wenn und aber in die Ping-Prüfung gegangen werden. Wie bekommt man das hin?
Bitte warten ..
Mitglied: Sheogorath
LÖSUNG 21.09.2014, aktualisiert um 19:45 Uhr
Moin,

das ist auch kein Problem, das mittel deiner Wahl ist "start"

01.
start c:\pfad\zur\plink.exe -pw Passwort nutzer@ip sudo pm-suspend
wobei man bei sowas dann lieber von Linux aus einen Ping an das gerät sendet, welches online ist.

Wenn das gerät ja nicht erreichbar ist, dann wirst du dort auch nichts abschlaten können, aber das ist ja deine Sache ;)

Gruß
Chris
Bitte warten ..
Mitglied: traller
21.09.2014 um 19:47 Uhr
Zitat von Sheogorath:

Moin,

das ist auch kein Problem, das mittel deiner Wahl ist "start"

01.
start c:\pfad\zur\plink.exe -pw Passwort nutzer@ip sudo pm-suspend
wobei man bei sowas dann lieber von Linux aus einen Ping an das gerät sendet, welches online ist.

Wenn das gerät ja nicht erreichbar ist, dann wirst du dort auch nichts abschlaten können, aber das ist ja deine Sache
;)

Gruß
Chris

brachte mich auf alle Fälle weiter. Nun sieht das Script so aus und funktioniert
01.
start plink.exe -pw Passwort nutzer@ip sudo pm-suspend 
02.
timeout /t 3 
03.
taskkill /IM plink.exe 
04.
:Loop 
05.
ping -n 1 ip 
06.
if %errorlevel% == 1 exit 
07.
goto :loop
Bitte warten ..
Ähnliche Inhalte
Windows Server
RDP beendet sich automatisch
Frage von DDioxxWindows Server3 Kommentare

Hallo Zusammen, ich stehe gerade auf dem Schlauch. Wir haben seit neuestem einen Windows Server 2012 R2 dieser managt ...

Entwicklung
Automatische Ping schleife
gelöst Frage von innovpizzaEntwicklung12 Kommentare

Hallo an alle, ich bin Auszubildender in einer Firma, in der wir gerade versuchen, vieles zu Automatisieren, so auch ...

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 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
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 9 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 13 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware8 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...