Cómo obtener una velocidad promedio de flujo de tubería

Cómo obtener una velocidad promedio de flujo de tubería

Si myfileaumenta con el tiempo, puedo obtener el número de líneas por segundo usando

tail -f | pv -lr > /dev/null

Da velocidad instantánea, no promedio.

¿Cómo puedo obtener la velocidad promedio (es decir, la integral de la función de velocidad v(t)durante el tiempo de monitoreo)?

Respuesta1

Con pv1.2.0 (diciembre de 2010) y superiores, tiene la -aopción:

Aquí con datos actuales y promedio, basados ​​en líneas:

$ find / 2> /dev/null | pv -ral > /dev/null
[6.28k/s] [70.1k/s]

Con 1.3.8 (octubre de 2012) y versiones posteriores, también puedes usar -F/ --formatcon %a:

$ find / 2> /dev/null | pv -lF 'current: %r, average: %a'  > /dev/null
current: [4.66k/s], average: [ 218k/s]

Tenga en cuenta que tail -fcomienza volcando las últimas 10 líneas del archivo. Úselo tail -n 0 -f file | pv -lapara evitar ese sesgo en el cálculo de la velocidad promedio.

información relacionada