С pv
1.2.0 (декабрь 2010 г.) и выше, с параметром -a
:
Здесь и текущее, и среднее значение, по строкам:
$ find / 2> /dev/null | pv -ral > /dev/null
[6.28k/s] [70.1k/s]
В версии 1.3.8 (октябрь 2012 г.) и новее вы также можете использовать -F
/ - формат
с % a
:
$ find / 2> /dev/null | pv -lF 'current: %r, average: %a' > /dev/null
current: [4.66k/s], average: [ 218k/s]
Обратите внимание, что tail -f
начинается с выгрузки последних 10 строк файла. Используйте tail -n 0 -f file | pv -la
, чтобы избежать такой ошибки при вычислении средней скорости.
Для zsh необходимо установить параметры EXTENDED_GLOB
.
Чтобы узнать, были ли они установлены, запустите setopt
для отображения установленных параметров:
$ setopt | grep glob
extendedglob
Если он не установлен, запустите setopt extended_glob
.
ПРИМЕЧАНИЕ. :это приведет к тому, что ~
, ^
и #
не будут расширены.
Проблема в моем случае заключалась в том, что, хотя я установил эту опцию в оболочке, я запускал цикл for в сценарии. Сценарий запускает собственную оболочку для запуска, поэтому для него не установлен этот параметр.
Чтобы исправить эту конкретную проблему, поместите setopt extendedglob
в сам скрипт.