slice allows to filter text data in a manner similiar to Python's slicing (informal description with examples here).
slice is designed to perform queries like "extract lines 12 to 21", "show first 10 lines", "show first 4 lines from last 10", "show last 6 lines".
In many cases slice can replace both head and tail.
Clone this repository:
$ git clone https://github.com/Reisse/slice.git
Then, install with cargo:
$ cargo install --path .
$ slice [OPTION]... [FILE]
Print slice from FILE to standard output. When slice is not specified, print whole file to standard output.
BEGIN and END may be any combination of positive (denoting position from the beginning) or negative (denoting position from the end) numbers.
$ cat test
1
2
3
4
5
$ slice -s 0:2 test
1
2
$ slice -s -1:5 test
5
$ slice -s 2:-1 test
3
4
$ slice -s -5:-3 test
1
2
- Both LF and CRLF are recognized as newline characters, but newlines are not preserved and are always replaced with LF in the output.
- Last line of the output will always end with LF.
See LICENSE file.
