GNU/Linux >> Tutoriales Linux >  >> Linux

extraer tiempo promedio de ping -c

Una forma es simplemente agregar un corte a lo que tienes ahí.

ping -c 4 www.stackoverflow.com | tail -1| awk '{print $4}' | cut -d '/' -f 2

Esto podría funcionar para usted:

ping -c 4 www.stackoverflow.com | sed '$!d;s|.*/\([0-9.]*\)/.*|\1|'

La siguiente solución solo usa Bash (requiere Bash 3):

[[ $(ping -q -c 4 www.example.com) =~ \ =\ [^/]*/([0-9]+\.[0-9]+).*ms ]] \
&& echo ${BASH_REMATCH[1]}

Para la expresión regular, es más fácil de leer (y manejar) si se almacena en una variable:

regex='= [^/]*/([0-9]+\.[0-9]+).*ms'
[[ $(ping -q -c 4 www.example.com) =~ $regex ]] && echo ${BASH_REMATCH[1]}

ping -c 4 www.stackoverflow.com | tail -1| awk -F '/' '{print $5}' funcionaría bien.

La opción "-F" se usa para especificar el separador de campo.


Linux
  1. Actualizar de CentOS 6 a CentOS 7

  2. ¿Cómo extraer registros entre dos marcas de tiempo?

  3. ¿Extraer archivo de la imagen de Docker?

  4. ¿Extraer gráficos de PDF?

  5. ¿Extraer valores de la terminal?

Error de ping de tiempo de vida excedido

¿Cómo extraer texto con OCR de un PDF en Linux?

Ping de Linux:Mostrar tiempo de espera

Hacer ping y tcpdump al mismo tiempo

extraer líneas desde abajo hasta que coincidan las expresiones regulares

Extraiga las rutas que faltan de la matriz de rutas de bash