linecook: Prepare lines of text for easy consumption
linecook
is a command-line tool that transforms lines of text into a form
that's pleasant to consume.
- Documentation: https://linecook.readthedocs.io
- Source: https://github.com/tonysyu/linecook
Install
The recommended way of installing linecook
is to use pip
:
pip install linecook
Cooking up some beautiful text
The core goal of linecook
is to make it easy to create your own transforms to
parse whatever text you have. For example, take an app.log
file that looks
like:
If you want to highlight the log type and mute the dates/times, then you can create a custom recipe in one of your configuration files like the following:
from linecook import patterns as rx
from linecook.transforms import color_text
LINECOOK_CONFIG = {
'recipes': {
'my-logs': [
color_text(rx.any_of(rx.date, rx.time), color='blue'),
color_text('INFO', color='cyan'),
color_text('WARN', color='grey', on_color='on_yellow'),
color_text('ERROR', on_color='on_red'),
],
},
}
To use this recipe, you can just pipe the log output to linecook
with your
new recipe as an argument:
That's all there is to it!
See Also
- grc: A generic colouriser (sic;) for log files and command output.
- rainbow: Colorize commands output or STDIN using patterns.
- multitail: Tail multiple files at once, with features to colorize, filter, and merge.
- colortail: Like the tail command line utility but with colors
- StackOverflow post on colored output