Como obter uma velocidade média de fluxo do tubo

Como obter uma velocidade média de fluxo do tubo

Se myfileestiver aumentando com o tempo, posso obter o número de linhas por segundo usando

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

Dá velocidade instantânea, não média.

Como posso obter a velocidade média (ou seja, a integral da função de velocidade v(t)ao longo do tempo de monitoramento).

Responder1

Com pv1.2.0 (dezembro de 2010) e superior, tem a -aopção:

Aqui com corrente e média, com base em linha:

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

Com 1.3.8 (outubro de 2012) e mais recente, você também pode usar -F/ --formatcom %a:

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

Observe que tail -fcomeça despejando as últimas 10 linhas do arquivo. Use tail -n 0 -f file | pv -lapara evitar esse viés no cálculo da velocidade média.

informação relacionada