Wie beende ich einen Ping, ohne das Befehlsterminalfenster zu schließen?

8

Wie beende ich den Ping, wenn ich den Befehl 'Ping' in einem Terminalfenster verwende? Ich habe meinen Router (192.168.1.1) gepingt und die Ergebnisse wurden im Terminalfenster angezeigt, aber das Programm läuft weiter, ohne dass angegeben wird, wie es beendet werden soll.

Ich kann den Befehl beenden, indem ich das Befehlsterminalfenster schließe, aber ich möchte es lieber offen lassen, damit ich Pings mit verschiedenen Adressen vergleichen kann.

Ubuntu 14.04 LTS

Matthew
quelle

Antworten:

11

Es gibt drei Möglichkeiten:

  • Manuell unterbrechen den pingBefehl Ctrl+ C, wie in @ beschrieben steeldriver ‚s Antwort .

  • Verwenden Sie ping's "count" Option ( -c COUNT) genau schicken Pings COUNT und dann automatisch beendet, wie in @ beschrieben bodhi.zazen ' s Antwort .

  • Verwenden Sie pingdie Option "Deadline" ( -w DEADLINE), um genau DEADLINE Sekunden zu laufen und dann automatisch zu beenden.


Natürlich können Sie die drei Optionen kombinieren. Wenn Sie sowohl eine "Zähl" - als auch eine "Frist" -Option übergeben, wird der Ping beendet, sobald das erste Ereignis eintritt. Und Ctrl+ Cfunktioniert sowieso immer.

Hier ist ein Beispiel mit einer "Anzahl" von maximal 10 Pings und einer "Frist" von 5 Sekunden, die jedoch manuell mit Ctrl+ Cnach 3 Pings ( ^C) beendet wurde:

$ ping -c 10 -w 5 askubuntu.com
PING askubuntu.com (104.16.110.188) 56(84) bytes of data.
64 bytes from 104.16.110.188: icmp_seq=1 ttl=56 time=54.6 ms
64 bytes from 104.16.110.188: icmp_seq=2 ttl=56 time=52.5 ms
64 bytes from 104.16.110.188: icmp_seq=3 ttl=56 time=54.0 ms
^C
--- askubuntu.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 52.582/53.733/54.611/0.850 ms
Byte Commander
quelle
2
Manchmal entweder die Klemme eats CTRL C, oder DNS - Abfrageblocks, in diesem Fall können Sie verwenden , CTRL Zgefolgt von kill %1dem Prozess auszusetzen und dann töten.
Radovan Garabík
2

Mit Ctrl+ können Sie Cein SIGINT (Interrupt-Signal) an den pingProzess senden - siehe Unix-Signale

Steeldriver
quelle
2

Geben Sie Ping entweder mit der Option -c eine Zählung:

ping -c 4 google.com

Oder beenden Sie den Befehl mit den Tasten Ctrl+ C.

Panther
quelle
0

Sie sollten versuchen , Ctrl+ Cdie Processus zu stoppen.

William Briot
quelle
@CharlesGreen, Diese Antwort wurde 6 Minuten vor der akzeptierten Antwort veröffentlicht.
user.dz
0

Sie können versuchen, ctrl+ cein Interrupt-Signal zu senden. Dadurch wird das Programm beendet, ohne das Terminal zu schließen

Ritwik G.
quelle