rng streams input from a file or stdin to stdout.
It is the love child of sed -n '<START>,<END>p' and tail -n.
You can install rng via Homebrew or manually.
brew tap nickolasburr/pfa
brew install rnggit clone https://github.com/nickolasburr/rng.git
cd rng
make
make installBy default, files are installed to /usr/local You can install elsewhere by passing PREFIX to make install.
make install PREFIX=/optCertain 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 MakefileSkip the first 4 lines of input from a pipe.
echo -e "First\nSecond\nThird\nFourth\nFifth" | rng 5Output lines 1-25 in Makefile.
rng ,25 MakefileGet lines 5-10 and 17-22 in main.c.
rng 5,10:17,22 main.cOutput all lines except 11-19 in main.c
rng ,10:20, main.cGet lines 16-27 of a text document from the web.
curl -fsL https://www.w3.org/TR/2003/REC-PNG-20031110/iso_8859-1.txt | rng 16,27