PV «pipe viewer», держу пари многие даже и не подозревали что такое существует.
Что же она делает? Давай на пальцах, когда ты запускаешь из консоли дампиться базу или выполняешь копирование какого нибудь большого файла, ничего не остается кроме как красноглазить и ждать конца операции. На экране нет никакой полезной информации.
Ну дак вот, встроив в свой pipe эту утилиту у тебя появится информативный progress bar который в реальном времени будет показывать cкорость обработки данных.
[===>xxxxxxxx] 20%Пошли тыкать:
pv /var/log/php/php-fpm.log | gzip > php-fpm.gz
33MiB 0:00:03 [ 114MiB/s] [==========> ] 32% ETA 0:00:06 Наглядно видно, что через пайп за 3 секунды прошло 33Мб — это 32% от всего объема, операция займет еще 6 секунд.
PV это вовсе не
cat, её возможности намного шире, тут уже зависит на сколько ты будешь оригинален в своих скриптах и велосипедах.Утилита укомплектована внушительной кучей различных ключей для запуска. Но я не привередливый и пользуюсь ей исключительно функционалом из коробки. Если есть время, кури
--help или можешь глянуть на доисторической официальной страничке, а при желании и скомпилировать. Из клёвых ключей, есть:
-l строчный режим, pv может ограничивать скорость и просто в байтахДопустим у тебя есть база данных, которая не толерантна к большому объёму INSERT-ов и UPDATE-ов. Но у тебя также есть большой дамп с кучей таких операций.
-L 100 – необходимое ограничение
Как безопасно импортировать дамп в базу и не убить её
# скорость ограничена 100 тысячами строк в секундуНу и на закусочку, баянище:
pv -L 100k -l dump.sql | mysql -u root -p
# скорость ограничена 100 строками в секунду
pv -L 100 -l dump.sql | mysql -u root -p
pv /dev/urandom > /dev/null
23MB 0:00:05 [ 12,9MB/s] [...<=>..........]
Не болей и береги себя. Всем хороших предстоящих выходных. Тут еще столько всего неизвестного и полезного ожидает тебя, мама не горюй )))Увидимся в понедельник! 💛
tags: #utils
—
🟢 Подпишись: @bashdays