top_n_tail 0.1.1

A CLI Utility to extract text from files or stdin
top_n_tail-0.1.1 is not a library.

Top 'n' Tail :carrot:

Crates Badge Docs Badge License Badge

A CLI Utility to extract text from files or stdin

Usage

Reading from stdin

$ tnt 5 15 < seq 1 20
$ seq 1 20 | tnt 5 15

Reading from file

$ seq 1 20 > my_seq.txt && tnt 5 15 -f my_seq.txt

Performance

Generating test data using seq I made 9,999,999 lines to test with. I emulated the behaviour using tail and head and then ran it against tnt.

$ seq 9999999 | time tail -9999998 | head -9999997 > /dev/null
tail -9999998  9.62s user 8.38s system 93% cpu 19.188 total
head -9999997 > /dev/null  3.12s user 5.18s system 48% cpu 17.220 total

The total time to extract took about 19 seconds

$ seq 9999999 | time tnt 1 9999997 > /dev/null
tnt 1 9999997 > /dev/null  0.36s user 0.21s system 17% cpu 3.286 total

The same output took about 3 seconds with tnt