El comando
ping <dest> &
hace que el ping pase al fondo. Sin embargo, todavía imprime la salida al terminal. Ctrl-C no lo detiene, solo introduce una nueva solicitud. ¿Cómo detenerlo desde la terminal?
fuente
El comando
ping <dest> &
hace que el ping pase al fondo. Sin embargo, todavía imprime la salida al terminal. Ctrl-C no lo detiene, solo introduce una nueva solicitud. ¿Cómo detenerlo desde la terminal?
Primero ingrese fg
en la misma terminal que ping
está ejecutando su comando (pone el proceso en primer plano), luego presione Ctrl+ cpara detener el proceso.
jobs
para obtener una lista de procesos que se ejecutan en segundo plano.
ffmpeg
.
Si es tu único trabajo en segundo plano, puedes matarlo kill %1
. Si no está seguro, puede enumerar todos sus trabajos en segundo plano jobs
y usarlos kill %<n>
donde reemplaza n por el número de su trabajo de ping.
Cuando se envía un proceso a un segundo plano, ya sea mediante el uso de ctrl- zo &
al final de la orden, se obtiene una salida en el siguiente formato: [index] process-id
. Si envía múltiples procesos a segundo plano, el índice seguirá incrementándose cada vez.
Por ejemplo:
$ sleep 100 &
[1] 41608
$ sleep 101 &
[2] 41609
$ sleep 102 &
[3] 41610
$ sleep 103 &
[4] 41611
$ sleep 104 &
[5] 41612
$ sleep 105 &
[6] 41613
$ sleep 106 &
[7] 41614
Para detener uno específico, puede usar kill <process-id>
o usar fg <index>
seguido de ctrl-c
Ejemplo usando la salida anterior:
$ kill 41614
o
$ fg 7
sleep 106
^C
Inicie una nueva pestaña de terminal, ejecute:
$ pgrep ping
2564
Luego mata al pid usando el kill
comando:
$ kill 2564
pgrep
para buscar procesos por nombre, también puede usar pkill
para matarlos por nombre. No es necesario escribir / copiar la identificación y el uso del proceso kill
.
Cuando eres root, es simple killall ping
.
Un enfoque ligeramente diferente hacia un ping continuo es usar la opción -c e ingresar la cantidad de tiempo que desea que se ejecute, de esa manera se detendrá después del conteo deseado, es decir, el ping debajo se detendrá después de 100 pings
ping -c 100 192.168.1.1 y
Solo usa:
kill -9 %%
y matará el proceso de fondo actual que estás ejecutando.
Puede ver todo el proceso que coloca en segundo plano (para la sesión actual) con el jobs
comando Después de ejecutar este comando, verá todos los procesos que se ejecutan en el bash actual y en el lado izquierdo de cada proceso puede ver algunos números:
[1]- Running sleep 200000 &
[2]+ Running sleep 300000 &
Simplemente puede terminar trabajos (procesos) usando kill -15 n%
(n es un número que está en el signo [[])
-15
es para terminar el proceso muy bien, si desea forzar el cierre del proceso, simplemente use en -9
lugar de -15
PS: es obvio que si ejecuta un comando con privilegio de root, debe ejecutar kill -15 n%
consudo
2) Puede ver todos los procesos que se ejecutan en el sistema con ps -aux
y para ver ping
:
ps -aux | grep ping
La salida es como:
root 2615 0.0 0.0 25828 1052 pts/0 S 02:12 0:00 ping 8.8.8.8
El segundo número (2615) es PID o ID de proceso y puede finalizar el proceso con
sudo kill -15 2615
ping
las iteraciones con un conteo-c N
, donde N es un número positivo.