Skip to content

Latest commit

 

History

History
76 lines (50 loc) · 2.42 KB

README.md

File metadata and controls

76 lines (50 loc) · 2.42 KB

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).

Usage

Progress bar

We can trigger this functionality by using pipeview as an intermediate between input and output pipes:

yes | pipeview | xargs echo > /dev/null # transparent pipe
pipeview < Cargo.toml | xargs echo > /dev/null # file pipe

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:

pipeview < ~/.ssh/id_rsa.pub

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