Endlos Ping abbrechen ohne STRG C
Moin Moin zusammen,
ich würde geren wissen, ob es eine Möglichkeit gibt, ein Endlos Ping aus einer Batch abzubrechen, ohne dafür die Tastenkombination STRG+C zu benutzen. Hintergrund dabei ist, dass ich für unseren Helpdesk ein kleines Tool zum abfragen von Clients geschrieben habe, wo man z.B. Ip - oder Mac Adressen von Hosts abfragen kann, Hosts Herunterfahren oder Neustarten, Net Send Nachrichten verschicken und eben den Host/Client anpingen kann. Über Choice wird abgefragt ob "Normaler Ping" oder "Endlos Ping". Wenn ich jedoch nun so einen Endlos Ping auswähle und will ihn wieder abbrechen geht das nur über STRG C. Dann kommt die Frage Batchvorgang abbrechen J,N? Wenn ich Ja wähle, wird der ganze Batchvorgang, sprich, das Tool beendet. Wenn Nein gewählt wird, geht es in der Batch Reihenfolge weiter, was ja auch gewünscht ist. Nur finde ich es nicht so schön, dass man, obwohl man eigentlich gar nicht aus der Batch will, die Frage mit dem Abbrechen, was eigentlich nur für den Ping gelten sollte, mit Nein beantworten muss um in der Batch zu bleiben.
Ich habe schon versucht eine Choice abfrage (Ping abbrechen? J,N) darunter zu stellen, geht aber nicht, weil der Befehl (Endlos Ping) ja noch nicht beendet ist und die Batch an dieser Stelle wartet. Am besten wäre eine beliebeige Tastatureingabe gefolgt von der Frage Ping abbrechen. Bei Nein weiter mit Endlos Ping, bei Ja zurück zur Auswahl "Normaler Ping - Endlos Ping". Hat da jemand eine Lösung??
MfG
Teddytrecker
ich würde geren wissen, ob es eine Möglichkeit gibt, ein Endlos Ping aus einer Batch abzubrechen, ohne dafür die Tastenkombination STRG+C zu benutzen. Hintergrund dabei ist, dass ich für unseren Helpdesk ein kleines Tool zum abfragen von Clients geschrieben habe, wo man z.B. Ip - oder Mac Adressen von Hosts abfragen kann, Hosts Herunterfahren oder Neustarten, Net Send Nachrichten verschicken und eben den Host/Client anpingen kann. Über Choice wird abgefragt ob "Normaler Ping" oder "Endlos Ping". Wenn ich jedoch nun so einen Endlos Ping auswähle und will ihn wieder abbrechen geht das nur über STRG C. Dann kommt die Frage Batchvorgang abbrechen J,N? Wenn ich Ja wähle, wird der ganze Batchvorgang, sprich, das Tool beendet. Wenn Nein gewählt wird, geht es in der Batch Reihenfolge weiter, was ja auch gewünscht ist. Nur finde ich es nicht so schön, dass man, obwohl man eigentlich gar nicht aus der Batch will, die Frage mit dem Abbrechen, was eigentlich nur für den Ping gelten sollte, mit Nein beantworten muss um in der Batch zu bleiben.
Ich habe schon versucht eine Choice abfrage (Ping abbrechen? J,N) darunter zu stellen, geht aber nicht, weil der Befehl (Endlos Ping) ja noch nicht beendet ist und die Batch an dieser Stelle wartet. Am besten wäre eine beliebeige Tastatureingabe gefolgt von der Frage Ping abbrechen. Bei Nein weiter mit Endlos Ping, bei Ja zurück zur Auswahl "Normaler Ping - Endlos Ping". Hat da jemand eine Lösung??
MfG
Teddytrecker
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 63521
Url: https://administrator.de/forum/endlos-ping-abbrechen-ohne-strg-c-63521.html
Ausgedruckt am: 23.12.2024 um 14:12 Uhr
6 Kommentare
Neuester Kommentar
Ist zwar ne nicht ganz so tolle Lösung aber versuchs mal so:
Du legst eine dauerping.bat an die nur den Endlospingbefehl enthällt.
Dann schreibst du in deine eigentliche Batch das rein:
miniversum
Du legst eine dauerping.bat an die nur den Endlospingbefehl enthällt.
Dann schreibst du in deine eigentliche Batch das rein:
start /wait cmd /C dauerping.bat
Geht zwar ein neues Fenster für den Ping auf aber wenn du das mit strg-C abbrichst geht es wieder zu und es läuft die andere Batch weiter.miniversum
Klar. das war auchnur als Beispiel gedacht.
Ich nenen sie jetzt mal ablauf.bat und dauerping.bat
Die ablauf.bat würde dan so aussehen:
Die dauerping.bat würde so aussehen:
miniversum
Ich nenen sie jetzt mal ablauf.bat und dauerping.bat
Die ablauf.bat würde dan so aussehen:
set /p host=Host:
start /wait cmd /C dauerping.bat %host%
Dabei würde die Batch Stehen bleiben bis der Dauerping abgebrochen wird. MAchst dud as /Wait weg läuft sie weiter.start /wait cmd /C dauerping.bat %host%
Die dauerping.bat würde so aussehen:
ping -t %1
%1 entspricht hier dem Übergebenen Parameter %host%miniversum
Geht doch mit choice:
0 entspricht STRG-C
1 entpricht "j"
2 entspricht "n"
@echo off & setlocal
set el=0
:schleife
ping -n 1 localhost > nul
choice /C:jn /N /T:n,1
set el=%errorlevel%
rem echo %el%
if %el% equ 0 goto :eof
if %el% equ 2 goto schleife
:weiter
echo hier geht's weiter
0 entspricht STRG-C
1 entpricht "j"
2 entspricht "n"