bcat: view console output in a browser
- Tutorial
The program runs on Linux, Mac OS X and FreeBSD (and, theoretically, on any UNIX-like platform with freedesktop.org integration).
You can use gem to install bcat:
gem install bcat
Rack is installed with bcat (unless, of course, it has already been installed before).
To check, you can try to open the calendar for 2014:
python -c "import calendar ; print calendar.HTMLCalendar().formatyear(2014)" | bcat
If a new tab opens in the browser and a calendar appears in it, then everything works correctly.
View Logs
tail -n 1000 -f /var/log/messages | bcat
The text in the browser will be updated as new lines appear in the log.
The log on the remote server can be viewed as follows:
ssh mywebsite.com 'sudo tail -f /var/log/nginx/access.log' | bcat
Use as a pager
You can use bcat as a pager for different programs.
For man:
export MANPAGER='sh -c "col -b | bcat"'For git:
export GIT_PAGER=bcat
After that, when you start, for example, “man grep” or “git log”, the focus switches to the browser window, and the command output opens in a new tab. By the way, if color output is enabled in Git, then the colors will be displayed in the browser too.
View clipboard
For Linux:
xclip -o -selection c | bcat
For Mac OS X:
pbpaste | bcat
Markdown
View a Markdown file with formatting:
markdown README.md | bcat
Teams, of course, can be docked as you like. For example, you can view the contents of the clipboard with Markdown formatting like this (for Linux):
xclip -o -selection c | markdown | bcat
Or so (for Mac OS X)
pbpaste | markdown | bcat
Testing the Django template
Let's say that in the current working directory there is a template template.html, and you want to see how it will be displayed with a specific context.
Create the preview_template.py file and run the following command:
python preview_template.py template.html "{'username': 'Његош'}"The browser immediately opens the result of rendering the template.
Of course, these are just examples, but in general, you can use bcat for a huge variety of everyday tasks.
See also
- Upgraded Unix Way or pipe to browser
- Sponge command: sponge for standard input
- Linux pipes tips & tricks