ping -t in Batchdatei anhalten
Robsondeluxe (Level 1) - Jetzt verbinden
27.04.2006, aktualisiert 06.05.2006, 8194 Aufrufe, 12 Kommentare
Moin ...
hab ne kleine Batchdatei geschrieben, in der man Rechner anpingen kann. Diese verläuft so, dass sie erst nach der letzten Ziffer der IP fragt. Dann kommt eine Abfrage, wie viele Anfragen man machen möchte, bzw. ob der ping "endlos" (-t) erfolgen soll. Aber seht selbst:
Soweit funktioniert auch alles, aber wenn ich eine Abfrage beende ([Strg]+[c]), dann fragt er, ob der Batchvorgang abgebrochen werden soll. Diese frage soll entweder gar nicht erscheinen oder gleich mit nein beantwortet werden.
Eine weitere Variante (die mir persönlich viel besser gefällt) wäre, dass ich den Pingvorgang in einem neuen Fenster öffne. Hier besteht allerdings das Problem, dass wenn ich diesen unterbreche nicht das Fenster offen hält.
Diese Version gefällt mir auch besser, aber es besteht eben dieses Problem ... (mit z.B. PAUSE hab ich das schon probiert, aber das hilft nix .... da führt er die Pause vorher oder im Hauptfenster aus)
Danke schon ma im voraus
MfG Robson
hab ne kleine Batchdatei geschrieben, in der man Rechner anpingen kann. Diese verläuft so, dass sie erst nach der letzten Ziffer der IP fragt. Dann kommt eine Abfrage, wie viele Anfragen man machen möchte, bzw. ob der ping "endlos" (-t) erfolgen soll. Aber seht selbst:
@echo off
ECHO.
:start
title ping.cmd
cd \
rem ---------- Abfrage der IP-Adresse -----------------------
set /p IP=letzte Ziffer der IP-Adresse angeben:
IF errorlevel 1 GOTO start
title ping an 192.168.0.%IP%
ECHO.
ECHO.
ECHO 192.168.0.%IP%
ECHO.
ECHO.
ECHO.
rem ---------- Abfrage der Anzahl (durchläufe) -------------
:error2
set /p Anzahl_n=Anzahl der ping's eingeben (0=endlos):
IF errorlevel 1 GOTO error2
IF /i "%Anzahl_n%"=="0" (ping -t 192.168.0.%IP%)
ELSE (ping -n %Anzahl_n% 192.168.0.%IP%)
ECHO.
ECHO.
ECHO.
rem ---------- Abfrage der Wiederholung ---------------------
set /p weiter=Weitere ping Anforderungen ausfuehren? [j/n]:
ECHO.
ECHO.
ECHO.
IF /i "%weiter%"=="n" (EXIT) ELSE GOTO start
Soweit funktioniert auch alles, aber wenn ich eine Abfrage beende ([Strg]+[c]), dann fragt er, ob der Batchvorgang abgebrochen werden soll. Diese frage soll entweder gar nicht erscheinen oder gleich mit nein beantwortet werden.
Eine weitere Variante (die mir persönlich viel besser gefällt) wäre, dass ich den Pingvorgang in einem neuen Fenster öffne. Hier besteht allerdings das Problem, dass wenn ich diesen unterbreche nicht das Fenster offen hält.
Diese Version gefällt mir auch besser, aber es besteht eben dieses Problem ... (mit z.B. PAUSE hab ich das schon probiert, aber das hilft nix .... da führt er die Pause vorher oder im Hauptfenster aus)
Danke schon ma im voraus
MfG Robson
12 Antworten
- LÖSUNG Biber schreibt am 27.04.2006 um 20:56:20 Uhr
- LÖSUNG Robsondeluxe schreibt am 27.04.2006 um 23:06:46 Uhr
- LÖSUNG Biber schreibt am 28.04.2006 um 08:35:29 Uhr
- LÖSUNG Robsondeluxe schreibt am 29.04.2006 um 18:00:34 Uhr
- LÖSUNG Biber schreibt am 28.04.2006 um 08:35:29 Uhr
- LÖSUNG Robsondeluxe schreibt am 27.04.2006 um 23:06:46 Uhr
- LÖSUNG scriptkiddy schreibt am 30.04.2006 um 20:36:52 Uhr
- LÖSUNG Robsondeluxe schreibt am 01.05.2006 um 13:04:57 Uhr
- LÖSUNG scriptkiddy schreibt am 01.05.2006 um 13:22:49 Uhr
- LÖSUNG Robsondeluxe schreibt am 01.05.2006 um 16:59:28 Uhr
- LÖSUNG scriptkiddy schreibt am 01.05.2006 um 17:42:08 Uhr
- LÖSUNG Robsondeluxe schreibt am 01.05.2006 um 18:24:12 Uhr
- LÖSUNG scriptkiddy schreibt am 05.05.2006 um 21:54:10 Uhr
- LÖSUNG Robsondeluxe schreibt am 06.05.2006 um 01:01:02 Uhr
- LÖSUNG scriptkiddy schreibt am 05.05.2006 um 21:54:10 Uhr
- LÖSUNG Robsondeluxe schreibt am 01.05.2006 um 18:24:12 Uhr
- LÖSUNG scriptkiddy schreibt am 01.05.2006 um 17:42:08 Uhr
- LÖSUNG Robsondeluxe schreibt am 01.05.2006 um 16:59:28 Uhr
- LÖSUNG scriptkiddy schreibt am 01.05.2006 um 13:22:49 Uhr
- LÖSUNG Robsondeluxe schreibt am 01.05.2006 um 13:04:57 Uhr
LÖSUNG 27.04.2006 um 20:56 Uhr
Moin Robson,
a) IF /i "%Anzahl_n%"=="0" (echo N|ping -t 192.168.0.%IP%)
- oder -
b) IF /i "%Anzahl_n%"=="0" (echo N|cmd /c ping -t 192.168.0.%IP%)
...sollten diese Anfordeung erfüllen, also endlos pingen und bei Ctrl-C ohne Rückfrage abbrechen.
Grüße
Biber
a) IF /i "%Anzahl_n%"=="0" (echo N|ping -t 192.168.0.%IP%)
- oder -
b) IF /i "%Anzahl_n%"=="0" (echo N|cmd /c ping -t 192.168.0.%IP%)
...sollten diese Anfordeung erfüllen, also endlos pingen und bei Ctrl-C ohne Rückfrage abbrechen.
Grüße
Biber
LÖSUNG 27.04.2006 um 23:06 Uhr
Danke erst mal, für die Antwort, aber da gibt es noch 2 Möglichkeiten:
1.) Ich bin zu doof, das in die Datei zu kopieren ODER
2.) das geht ni
Er fragt trotzdem noch ab ... vielleicht gibt es ja noch ne variante, das er ein neues Fenster offen hält ... (aber ohne ne 2. Datei anzulegen)
MfG
Robson
1.) Ich bin zu doof, das in die Datei zu kopieren ODER
2.) das geht ni
Er fragt trotzdem noch ab ... vielleicht gibt es ja noch ne variante, das er ein neues Fenster offen hält ... (aber ohne ne 2. Datei anzulegen)
MfG
Robson
LÖSUNG 28.04.2006 um 08:35 Uhr
Sorry, Robson,
gestern war ich zu blöd, nicht Du.. *gg
Muss natürlich "echo J|ping...." heißen statt "echo N|ping..."
Grüße
Biber
gestern war ich zu blöd, nicht Du.. *gg
Muss natürlich "echo J|ping...." heißen statt "echo N|ping..."
Grüße
Biber
LÖSUNG 29.04.2006 um 18:00 Uhr
tach ...
deine variante gehte immer noch nicht ... trotzdem danke
ich hab jetzt mehrere Lösungen gefunden (das erspar ich dir lieber mal, weil ich sonst mind. 3 Seiten schreiben würde *g*)
Meine neuste Version geht soweit ... nur leider gibt es noch ein kleines Problem ...
ich ruf jetzt ein neues Fenster auf (und es bleibt sogar offen) mit
hier besteht das Problem, das ich nix dahinter schreiben kann, wie z.B. PAUSE und danach EXIT. Also es sollte so sein, dass ich mit irgendeiner Taste das neue Fenster wieder schließen kann (sonst muss man immer das zu lange wort "EXIT" eingeben) ...
MfG
Robson
deine variante gehte immer noch nicht ... trotzdem danke
ich hab jetzt mehrere Lösungen gefunden (das erspar ich dir lieber mal, weil ich sonst mind. 3 Seiten schreiben würde *g*)
Meine neuste Version geht soweit ... nur leider gibt es noch ein kleines Problem ...
ich ruf jetzt ein neues Fenster auf (und es bleibt sogar offen) mit
start cmd /K ping -t 192.168.0.%IP%
MfG
Robson
LÖSUNG 30.04.2006 um 20:36 Uhr
Hm irgendwas stimmt da bei mir wohl nich....
es nimmt mir hier eine falsche ip ich hab im netztwerk die 192.168.69.xx
wenn ich dem jetzt als Beispiel die endziffer 30 angebe dann pingt der für 192.168.0.30
ich kann in deinem script aber irgendwie keinen fehler entdecken....
Könnt ihr mir sagen wieso das bei mir so ist ?
Grüße Scriptkiddy
es nimmt mir hier eine falsche ip ich hab im netztwerk die 192.168.69.xx
wenn ich dem jetzt als Beispiel die endziffer 30 angebe dann pingt der für 192.168.0.30
ich kann in deinem script aber irgendwie keinen fehler entdecken....
Könnt ihr mir sagen wieso das bei mir so ist ?
Grüße Scriptkiddy
LÖSUNG 01.05.2006 um 13:04 Uhr
Okay ... ich schreib noch ma das ganze hier rein ...
Wenn du den IP-Adressenbereich 192.168.69.xx hast, dann musst die einfach dort wo 192.168.0. steht 192.168.69. hinschreiben ... dann geht es !!!
MfG
Robson
@echo off
ECHO.
:start
set IP=
title ping.cmd
cd \
rem ---------- Abfrage der IP-Adresse -----------------------
set /p IP=letzte Ziffer der IP-Adresse angeben:
IF /i "%IP%"=="q" EXIT
IF /i "%IP%"=="a" GOTO Anzahl
IF /i "%IP%"=="?" GOTO Help
IF /i "%IP%"=="" GOTO Help
IF /i "%IP%"=="o" GOTO open
IF /i "%IP%"=="f" GOTO Free
title ping an 192.168.0.%IP%
ECHO.
ECHO.
ECHO 192.168.0.%IP%
ECHO.
ECHO.
ECHO.
start cmd /K ping -t 192.168.0.%IP%
GOTO start
rem ---------- Abfrage der Anzahl (durschläufe) -------------
:Anzahl
set IP=
set /p IP=letzte Ziffer der IP-Adresse angeben (danach Anzahl):
IF /i "%IP%"=="q" EXIT
IF /i "%IP%"=="" GOTO Anzahl
:error
set /p Anzahl_n=Anzahl der ping's eingeben (0=endlos):
IF /i "%Anzahl_n%"=="q" EXIT
IF /i "%Anzahl_n%"=="" GOTO error
IF /i "%Anzahl_n%"=="0" (start cmd /K ping -t 192.168.0.%IP%) ELSE (start cmd /K ping -n %Anzahl_n% 192.168.0.%IP%)
ECHO.
ECHO.
ECHO.
GOTO start
rem ---------- weiteres Fenster öffnen ----------------------
:open
start ping.cmd
GOTO start
rem ---------- Freie ping / Computernamen -wahl -------------
:Free
set /p IP_F=IP-Adresse oder Computernamen eingeben:
start cmd /K ping -t %IP_F%
GOTO start
rem ---------- Hilfe ----------------------------------------
:Help
ECHO.
ECHO Möglichkeiten:
ECHO.
ECHO 1) q = Beenden
ECHO 2) a = IP-Adresse angeben und bestimmen, wie viele Anfragen ...
ECHO 3) o = oeffnet ein neues Fenster
ECHO 4) f = freie Wahl der IP-Adresse oder Computername
ECHO 5) [ZAHL] = die letzte Ziffer der anzupingenden IP angeben
ECHO.
ECHO.
ECHO.
GOTO start
Wenn du den IP-Adressenbereich 192.168.69.xx hast, dann musst die einfach dort wo 192.168.0. steht 192.168.69. hinschreiben ... dann geht es !!!
MfG
Robson
LÖSUNG 01.05.2006 um 13:22 Uhr
und was soll dann die Fenster zuspamme ? 
Egal was ich mache da kommen nur millionen von fenstan
Grüße Scriptkiddy
Egal was ich mache da kommen nur millionen von fenstan
Grüße Scriptkiddy
LÖSUNG 01.05.2006 um 16:59 Uhr
weiß ni ...
das einzige, was bei mir aufgefallen ist, das er das Backslash ni mit angezeigt hat ...
Eigentlich muss eins hinter cd
aber ansonsten müsste es funzen ...
das einzige, was bei mir aufgefallen ist, das er das Backslash ni mit angezeigt hat ...
Eigentlich muss eins hinter cd
:start
set IP=
title ping.cmd
cd <Backslash>
LÖSUNG 01.05.2006 um 17:42 Uhr
Sry aber irgendwie geht der bei mir nich wenn ich die IP eingebe kommt da neues fensta und in dem alten frägt dad nochma nach den letzten beiden Ziffern....
Grüße Scriptkiddy
Grüße Scriptkiddy
LÖSUNG 01.05.2006 um 18:24 Uhr
ach so ... hihi 
ein bisschen weiter oben habe ich geschrieben, dass ich es jetzt anders gemacht habe.
Es soll ein neues Fenster auf gemacht werden und dort der ping durchlaufen. Das hat den Vorteil, dass man die Antworten besser vergleichen kann. Du kannst es auch in einem Fenster auf machen, aber da besteht das Problem, dass wenn man den ping abbricht, die blöde Frage gestellt wird, ob man den Batchvorgang beenden möchte ...
Das kann man auch umgehen, in dem man, bevor er diese Frage stellt, die Batchdatei noch einmal aufruft und der Rest, was vorher drin steht auch erhalten bleibt, ABER wenn man die Datei wirklich mit q oder so beenden möchte, fragt er so oft nach, wie oft die [Strg]+[C] gedrückt hast.
Ich weiß eben bloß noch nicht, wie ich das 2. Fenster mit einem Tastedruck auch beenden kann ... HELP
MfG
Robson
ein bisschen weiter oben habe ich geschrieben, dass ich es jetzt anders gemacht habe.
Es soll ein neues Fenster auf gemacht werden und dort der ping durchlaufen. Das hat den Vorteil, dass man die Antworten besser vergleichen kann. Du kannst es auch in einem Fenster auf machen, aber da besteht das Problem, dass wenn man den ping abbricht, die blöde Frage gestellt wird, ob man den Batchvorgang beenden möchte ...
Das kann man auch umgehen, in dem man, bevor er diese Frage stellt, die Batchdatei noch einmal aufruft und der Rest, was vorher drin steht auch erhalten bleibt, ABER wenn man die Datei wirklich mit q oder so beenden möchte, fragt er so oft nach, wie oft die [Strg]+[C] gedrückt hast.
Ich weiß eben bloß noch nicht, wie ich das 2. Fenster mit einem Tastedruck auch beenden kann ... HELP
MfG
Robson
LÖSUNG 05.05.2006 um 21:54 Uhr
Ich weiß auch nicht ich glaube das ich eifnach zu dumm für dieses Script bin 
Ich bekomm das einfach nicht zum laufen .....
Grüße Scriptkiddy
Ich bekomm das einfach nicht zum laufen .....
Grüße Scriptkiddy
LÖSUNG 06.05.2006 um 01:01 Uhr
was genau möchtes du denn machen?
Möchtes du, dass es in einem neuen Fenster geöffnet wird (so, wie es jetzt is) ODER
lieber, dass es alles in einem Fenster bleibt?
Wenn du es in "mehreren" Fenstern haben möchtest (so steht es wie gesagt oben), was sagt er denn, wenn du es ausführst?
Beschreibs mal genauer
MfG
Robson
Möchtes du, dass es in einem neuen Fenster geöffnet wird (so, wie es jetzt is) ODER
lieber, dass es alles in einem Fenster bleibt?
Wenn du es in "mehreren" Fenstern haben möchtest (so steht es wie gesagt oben), was sagt er denn, wenn du es ausführst?
Beschreibs mal genauer
MfG
Robson