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-Key: 255552

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

Printed on: April 18, 2024 at 03:04 o'clock

Member: Pjordorf
Pjordorf Nov 22, 2014 updated at 02:19:45 (UTC)
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. Formatting instructions in the posts 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
Member: rubberman
rubberman Nov 22, 2014 at 13:03:03 (UTC)
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
Member: kossuth
kossuth Jan 12, 2015 at 23:53:22 (UTC)
Goto Top
Hallo, Sie könnten loops, system Fehler oder Vergleiche sehen .:
http://en.wikibooks.org/wiki/Windows_Batch_Scripting