LNS(1): print lines
__________________________________________________
USAGE
usage: lns [-Dnpu] {-r range} {file}
-D: debug
-n: print line numbers
-p: print file names and line numbers
-r range: print this range
-u: use unix out
DESCRIPTION
Lns prints selected lines for files in the input. Lines are
specified as ranges. A range may be a single line number,
counting from 1, or a pair of start and end line numbers
separated by a ',' character. Negative line numbers count
backwards from the end of the file (the last is -1 and so on).
Multiple ranges may be given. But beware, in such case, to avoid
storing the entire file, ranges involving only positive line
numbers are printed first and then ranges involving negative line
numbers. Depending on the ranges given, this might lead to
unsorted line prints.
A missing start number in a range means 1, and a missing end
number in a range means -1. If no range is given, ',' is implied.
And, when such range is indicated, all lines are printed, one
line at a time. This is useful to generate messages into the
output for each single line in the input.
EXAMPLE
Print the first two lines and the last two lines of the input
; seq 15 | rf | lns -u -r ,2 -r -2,
1
2
14
15
Apply cmd to each line of Go sources files
; lf -g ,~*.go | lns | for x {
cmd $x
}
SOURCE
+o /zx/sys/src/clive/cmd/lns
__________________________________________________
User's manual. Section 1. Copyright © LSUB 2014-2016