Como obter uma velocidade média de fluxo de tubulação

16

Se myfile estiver 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) durante o tempo de monitoramento).

    
por user123456 21.10.2016 / 08:09

1 resposta

15

Com pv 1.2.0 (dezembro de 2010) e acima, é com a opção -a :

Aqui com os valores atual e médio, com base em linha:

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

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

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

Observe que tail -f começa despejando as últimas 10 linhas do arquivo. Use tail -n 0 -f file | pv -la para evitar esse viés em seu cálculo de velocidade média.

    
por 21.10.2016 / 09:14