Easily colorize logs or commands output using patterns. :
rainbow [ --COLOR=PATTERN ... | --conf CONF ] COMMAND
Just prepend rainbow
with COLOR=PATTERN
associations to your command, for example:
Tail some log file with lines containing
ERROR
in red: :rainbow --red='.*ERROR.*' -- tail -f /var/log/my.log
Ping Google with IP addresses colorized in yellow: :
rainbow --yellow='\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}' -- ping www.google.com
Rainbow can also read from STDIN instead of providing a command: :
tail -f /var/log/my.log | rainbow --red='.*ERROR.*'
Rainbow can read COLOR=PATTERN
associations from config files, which is the most common way to use it. It automatically uses the config file if there is one named after the command name in ~/.rainbow
, or a builtin one:
Colorize the
diff
command output using the builtin config: :rainbow diff file1 file2
Start JBoss application server with colorized logs: :
rainbow --config=jboss -- jboss/bin/run.sh run
The syntax for writing configs is very simple. See the builtin configs for examples.
- Ubuntu/Debian based distributions: coming soon.
- Arch Linux : AUR/rainbow / AUR/rainbow-git.
You can build from sources this way:
git clone git://github.com/nicoulaj/rainbow.git
cd rainbow
sudo python setup.py install
This project is a fork of Linibou's colorex. It is is released under the terms of the GNU General Public License. See COPYING
for details.