- Регистрация
- 23.09.18
- Сообщения
- 12.347
- Реакции
- 176
- Репутация
- 0
Для тех, кто не хочет покидать консоль, любит её ascii-графику, появилась утилита для отрисовки графиков из pipe. Под катом анимация и примеры.
Пинг
ping ya.ru | grep --line-buffered time | sed -u -e 's#.*time=\([^ ]*\).*#\1#' | pipeplot --min 0
Можно отслеживать коронавирус через
while true; \
do curl -s
| jq '.deaths'; \
sleep 60; \
done \
| pipeplot --color 1 --direction left
потребуется установить jq для разбора json
Пятисотки через графит
while true; \
do \
curl -s '
| jq -c '.[0].datapoints[-1]'; \
sleep 5; \
done \
| sed -u s/null/0/ \
| stdbuf -oL uniq \
| stdbuf -oL jq '.[0]' \
| pipeplot
Буферизация
Многие консольные утилиты буферизируют stdout. Из-за этого последовательный pipe ломается. Некоторые утилиты поддерживают настройку буферизации: sed -u, grep --line-buffered. В другом случае можно использовать универсальный способ stdbuf -oL и unbuffer.
Доступные опции
--color COLOR — цвет колонок, число из палитры
--symbol SYMBOL — символ для отображения колонок, поддерживает
--scale {all,window} — настройка автоматического масштабирования минимума и максимума, all — учитывает все данные, window — только видимые
--direction {left,right} — направление
--min MIN --max MAX — фиксирует минимум и максимум, сочетается с автоматическим масштабированием.
Установка
pip install pipeplot
P.S.: Добро пожаловать на
Пинг

ping ya.ru | grep --line-buffered time | sed -u -e 's#.*time=\([^ ]*\).*#\1#' | pipeplot --min 0
Можно отслеживать коронавирус через
You must be registered for see links
while true; \
do curl -s
You must be registered for see links
\| jq '.deaths'; \
sleep 60; \
done \
| pipeplot --color 1 --direction left
потребуется установить jq для разбора json
Пятисотки через графит
while true; \
do \
curl -s '
You must be registered for see links
' \| jq -c '.[0].datapoints[-1]'; \
sleep 5; \
done \
| sed -u s/null/0/ \
| stdbuf -oL uniq \
| stdbuf -oL jq '.[0]' \
| pipeplot
Буферизация
Многие консольные утилиты буферизируют stdout. Из-за этого последовательный pipe ломается. Некоторые утилиты поддерживают настройку буферизации: sed -u, grep --line-buffered. В другом случае можно использовать универсальный способ stdbuf -oL и unbuffer.
Доступные опции
--color COLOR — цвет колонок, число из палитры
You must be registered for see links
--symbol SYMBOL — символ для отображения колонок, поддерживает
You must be registered for see links
--scale {all,window} — настройка автоматического масштабирования минимума и максимума, all — учитывает все данные, window — только видимые
--direction {left,right} — направление
--min MIN --max MAX — фиксирует минимум и максимум, сочетается с автоматическим масштабированием.
Установка
pip install pipeplot
P.S.: Добро пожаловать на
You must be registered for see links
проекта ^-^. Пишите в ПРы, или комменты, свои примеры. Самые интересные добавлю в readme!