0

我想使用 gnu less -N 在文本文件上显示行号,但我希望起始编号与第一行不同。是否可以更改 gnu less 计算行数的起始行仍然显示完整文件?

举些例子:

less myfile.txt
_ asfasdfsa
_ asdfadsf
1 asdfsadfasd
2 asdfasdfsadfsad
3 adfasdfsaf
4 asdfasfdsa
5 adfadsfa

wc -l myfile.txt
7
4

1 回答 1

1

对于 awk 来说,这将是一项微不足道的任务。

awk '{s=NR<3?"-":++i;print s,$0}' file

在上面的示例中,行号是从第 3 行添加的(awk 代码中的 3)

例如

kent$  seq 7|awk '{s=NR<3?"-":++i;print s,$0}'
- 1
- 2
1 3
2 4
3 5
4 6
5 7

您当然可以通过管道输出less来获得更少的功能。看起来像:

awk '{s=NR<3?"-":++i;print s,$0}' file|less
于 2013-07-08T12:58:47.407 回答