arniee
Goto Top

Ping Test mit Auswertung

Hallo,
Ich habe gestern angefangen Batch zu programmieren und bin noch ein Blutiger anfänger...
Also nun stehe ich vor diesem Problem,Ich will einen Internet Test programmieren mit ping google.de und falls dieser erfolgreich war soll die Ausgabe "Internet Funktioniert" kommen.
Falls der ping fehlschlägt die Ausgabe "Keine Internet Verbindung"

Das ist mein Code soweit:
@echo off
title Arnie's Tool
color 0A


:Internet
echo --------------------------------------------------------------------------------
echo Internet Test
echo.
echo --------------------------------------------------------------------------------

echo.
echo Teste Internet...

:online
echo --------------------------------------------------------------------------------
echo Internet Funktioniert
echo.
echo --------------------------------------------------------------------------------
pause

goto menue

PS:Da kommen noch einige Zeilen davor doch funktonieren die alle ;)

Ich hoffe ihr könnt mir helfen face-smile

Danke im Vorraus

Arnie

Content-ID: 255552

Url: https://administrator.de/contentid/255552

Ausgedruckt am: 25.11.2024 um 08:11 Uhr

Pjordorf
Pjordorf 22.11.2014 aktualisiert um 03:19:45 Uhr
Goto Top
Hallo,

Zitat von @Arniee:
Ich will einen Internet Test programmieren
Dann tu es doch face-smile

Das ist mein Code soweit:
Wenn du den Code in Tags einbindest kommt es besser. Formatierungen in den Beiträgen Beispiel:
echo.
echo Teste Internet...
ping -n 4 -l 8 google.de  || goto online

online 
echo --------------------------------------------------------------------------------

Dein
|| goto online
wird immer ausgeführt, es sei denn dein PING Kommando ist nicht vorhanden oder selbst Fehlerhaft. Hier ist die Verkettung aufgrund der grundsätzlichen ERFOLGREICHEN Ausführung von PING ein schlecht gewählter weg. (Auch wenn der Ping ins leere läuft, die Ausgabe bzw. Rückgabe von PING ist auf jeden fall erfolgreichface-smile) Da spielt das Ergebnis der Ausgabe von Ping keine rolle, denn ein Ergebnis wird auf jeden fall ausgegeben. Du solltest prüfen ob als Ergebnis ein Timeout oder sonst was kommt was dir eindeutig auf eine nicht vorhandene Internetleitung schließen lässt. Dann ist das Ergebnis von ping Sprachabhängig und OS abhängig. Nimm ein XP und ein W7 und mach mal ping www.aldi.de oder ping www.administrator.de oder www.ichbinbatchanfaenger.de. Diese Ergebnisse gilt es auszuwerten. Ein FOR oder IF wäre hier .....

Ich hoffe ihr könnt mir helfen face-smile
Wobei? Ich erkennen keine weitere Frage.

Nutze hier im Forum mal die Suchmaschine. Deine Batch wurde schon mehrfach erfunden... z.B. Onlinetester in Batch

Gruß,
Peter
rubberman
rubberman 22.11.2014 um 14:03:03 Uhr
Goto Top
Hallo Arniee, willkommen im Forum.

@echo off &setlocal
set "host=google.de"  

>nul ping -n 1 %host% && (
  echo %host% antwortet
) || (
  echo %host% antwortet nicht innerhalb von 2 Sekunden
)

pause
Mit PING kannst du nur herausfinden ob der angepingte Host antwortet. Das hat nicht zwingend etwas mit deiner Verbindung zum Internet zu tun.
Den GOTO Kram brauchst du nur für bestimmte Schleifenvarianten. Damit kreuz und quer im Code herum zu springen, solltest du dir gar nicht erst angewöhnen.

Grüße
rubberman
kossuth
kossuth 13.01.2015 um 00:53:22 Uhr
Goto Top
Hallo, Sie könnten loops, system Fehler oder Vergleiche sehen .:
http://en.wikibooks.org/wiki/Windows_Batch_Scripting