Pull to refresh

bcat: просмотр вывода консольных программ в браузере

Reading time2 min
Views8.5K
С удивлением обнаружил, что никто на Хабрахабре не писал про bcat. Это маленькая удобная утилита для просмотра вывода консольных программ в браузере. У вас есть скрипт, возвращающий HTML? Bcat! Нужен простой предпросмотр для README-файла с Markdown-форматированием, который вы только что дописали? Bcat! Пишете парсер веб-сайта, и хотите посмотреть, что за ошибку возвращает сайт? Bcat! Есть большой лог, и вы хотите, чтобы он отобразился чёрным по белому, и его было удобно читать? Ну, вы поняли, да? :)

Программа работает на Linux, Mac OS X и FreeBSD (и, теоретически, на любой UNIX-подобной платформе с интеграцией freedesktop.org).

Для установки bcat можно воспользоваться gem:

gem install bcat

Вместе с bcat устанавливается rack (если, конечно, он не был уже установлен до этого).

Для проверки можно попробовать открыть календарь на 2014 год:

python -c "import calendar ; print calendar.HTMLCalendar().formatyear(2014)" | bcat

Если в браузере открылась новая вкладка, и в ней отобразился календарь — значит, всё работает правильно.

Просмотр логов

tail -n 1000 -f /var/log/messages | bcat

Текст в браузере будет обновляться по мере появления новых строк в логе.

Лог на удалённом сервере можно смотреть так:

ssh mywebsite.com 'sudo tail -f /var/log/nginx/access.log' | bcat

Использование в качестве пейджера

Можно использовать bcat как pager для разных программ.

Для man:

export MANPAGER='sh -c "col -b | bcat"'

Для git:

export GIT_PAGER=bcat

После этого, когда вы запускаете, например, «man grep» или «git log», фокус переключается на окно браузера, и вывод команд открывается в новой вкладке. Кстати, если в Git включён цветовой вывод, то цвета будут отображаться и в браузере тоже.

Просмотр буфера обмена

Для Linux:

xclip -o -selection c | bcat

Для Mac OS X:

pbpaste | bcat

Markdown

Просмотр Markdown-файла с форматированием:

markdown README.md | bcat

Команды, естественно, можно состыковывать как угодно. Например просмотреть содержимое буфера обмена с Markdown-форматированием можно так (для Linux):

xclip -o -selection c | markdown | bcat

Или так (для Mac OS X)

pbpaste | markdown | bcat

Тестирование шаблона Django

Допустим, в текущей рабочей директории есть шаблон template.html, и вы хотите посмотреть, как он будет отображаться с определённым контекстом.

Создаём файл preview_template.py и запускаем такую команду:

python preview_template.py template.html "{'username': 'Његош'}"

В браузере тут же открывается результат рендеринга шаблона.

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

Смотри также



Tags:
Hubs:
Total votes 33: ↑30 and ↓3+27
Comments21

Articles