Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
80 lines (52 sloc) 1.29 KB


rng streams input from a file or stdin to stdout.

It is the love child of sed -n '<START>,<END>p', head -n, and tail -n.

Table of Contents


You can install rng via Homebrew or manually.


brew tap nickolasburr/pfa
brew install rng


git clone
cd rng
make install

By default, files are installed to /usr/local You can install to an alternate location by passing PREFIX to make install.

For example, make install PREFIX=/opt


Certain range values can be omitted if they can be properly implied. To get multiple ranges, use the colon (:) operator.


Get lines 7-15 in Makefile.

rng 7,15 Makefile

Skip the first 4 lines of input from a pipe.

echo -e "First\nSecond\nThird\nFourth\nFifth" | rng 5

Output lines 1-25 in Makefile.

rng ,25 Makefile

Get lines 5-10 and 17-22 in main.c.

rng 5,10:17,22 main.c

Output all lines except 11-19 in main.c

rng ,10:20, main.c

Get lines 16-27 of a text document from the web.

curl -fsL | rng 16,27