Измерьте пропускную способность трубы в корпусе

Существует команда оболочки, которая позволяет измерять, насколько быстро данные проходят через нее, поэтому вы можете измерять скорость вывода команд в трубе. Поэтому вместо:

$ somecommand | anothercommand 

вы можете сделать что-то вроде:

 $ somecomand | ??? | anothercommand 

И статистика пропускной способности (байт / сек) приписывается stderr, я думаю. Но я не могу, чтобы жизнь меня помнила, что это за команда.

Советы?

cpipe , вероятно, лучше для этих целей, но другая связанная программа – pv (Pipe Viewer):

Скриншот из pv с главной страницы pv

Если вы дадите ему флаг --rate он покажет скорость передачи

Вам нужна утилита cpipe .

Применение:

 tar cCf / - usr | cpipe -vr -vw -vt > /dev/null 

Вывод:

 ... in: 19.541ms at 6.4MB/s ( 4.7MB/s avg) 2.0MB out: 0.004ms at 30.5GB/s ( 27.1GB/s avg) 2.0MB thru: 19.865ms at 6.3MB/s ( 4.6MB/s avg) 2.0MB ... 

Если у вас есть Python 2 или 3 и pip ( sudo apt-get install python-pip ), вы можете установить tqdm :

  python -m pip install tqdm 

Тогда просто:

  somecommand | tqdm | anothercommand 

Если вам нужна помощь, запустите tqdm --help . У него много вариантов. Не стесняйтесь читать больше и делать предложения на https://github.com/tqdm/tqdm

Теперь доступен новый инструмент для проверки доступа к уже запущенным файлам процессов, отображения прогресса и оценки пропускной способности: https://github.com/Xfennec/cv

Если ваша somecommand или anothercommand уже известны cv , она так же проста в использовании, как watch cv -wq , либо вам нужно использовать опцию -c чтобы специально отслеживать ваши процессы.

Как видно на https://askubuntu.com/a/620234 , обратите внимание, что pv , по крайней мере, может значительно замедлить вашу пропускную способность. Статья связана с обложками dd , но дело в том, что pv может замедлить ваши вещи. Если вам все равно, и если вы, например, переносите терабайты данных.