9 releases

0.2.4 May 24, 2024
0.2.3 Sep 10, 2023
0.2.2 Jul 7, 2023
0.2.1 Jan 21, 2023
0.0.1 Aug 17, 2022

#300 in Visualization

MIT license

160KB
449 lines

pipeview

CI CD crates.io

A command line pipe inspection utility.

screenshot

Why?

  • Simple coloring of an input pipe with regex and colors as input args.
  • Multiple custom configs in the form of a pipeview.toml file in current folder or ~/.config/.
  • Progress bar (same as Linux's pv) - WIP.

Usage

Simple coloring with no args

When calling pipeview with no parameters, it will search for commas in the input. If no commas are found, it will default to searching for spaces.

Whichever it finds first will serve as a delimiter for splitting the input for coloring.

Example:

$ cat ~/.ssh/id_rsa.pub | pipeview

Screenshot 2024-05-22 at 18 07 07

Explicit coloring via regex patterns

Explicit coloring can be performed on the input based on a regular expression.

$ cat test/demo_nginx_access_log | pipeview "^(.*?) - - \\[(.*?)\\] \"(.*?) .*?\" (.*?) .*? \".*?\" \"(.*?)\"" 'bgreen white yellow cyan blue'

Nginx

Nginx and aim logs can be directly inspected using the --nginx or --aim flag:

$ cat test/demo_nginx_access_log | pipeview --nginx

screenshot-nginx

Custom configs

You can create a config in ~/.config/pipeview.toml or the current folder with filename pipeview.toml and call it using pipeview --config=foo.

An example custom config could be:

[foo]
regex="^(.*?) (.*?) (.*?): (.*?) (.*)"
colors="red green blue red green"

In case no custom config is specified, but there is a pipeview.toml file in the default paths and it contains only one entry, it will be used by default.

This enables you to have the file under version control and just use pipeview out-of-the-box without any args.

Installation

Building from source

$ cargo install pipeview

Dependencies

~8–19MB
~226K SLoC