目录
命令简介
- nl命令读取 file 参数(缺省情况下标准输入),计算输入中的行号,将计算过的行号写入标准输出。
- 在输出中,nl命令根据您在命令行中指定的标志来计算左边的行。输入文本必须写在逻辑页中。
- 每个逻辑页有头、主体和页脚节(可以有空节)。除非使用-p选项,nl命令在每个逻辑页开始的地方重新设置行号。
- 可以单独为头、主体和页脚节设置行计算标志(例如,头和页脚行可以被计算然而文本行不能)。
- 其默认的结果与cat -n有点不太一样,nl可以将行号做比较多的显示设计,包括位数与是否自动补齐0等等的功能。
命令格式
nl [选项] [文件]
命令选项
-b :指定行号表示的方式,主要有两种:
-b a :表示不论是否为空行,也同样列出行号(类似 cat -n);
-b t :如果有空行,空的那一行不要列出行号(默认值);
-n :列出行号表示的方法,主要有三种:
-n ln:行号在自己栏位的最左方显示;
-n rz:行号在自己栏位的最左方显示,且加 0 ;(???)
-n rn:行号在自己栏位的最右方显示;(???)
-w :行号栏位的占用的位数。
-p :在逻辑定界符处不重新开始计算。
实战演练及总结
创建一个文件
[root@myhost yuki]# cat ./log2015.log
2015-01
2015-02
#空白行
2015-03
2015-04
2015-05
2015-06
2015-07
2015-08
2015-09
2015-10
2015-11
2015-12
用nl显示文件的内容
说明:文件中的空白行,nl默认不会加上行号,相当于 nl -b t
[root@myhost yuki]# nl ./log2015.log ==
1 2015-01
2 2015-02
#空白行不显示行号
3 2015-03
4 2015-04
5 2015-05
6 2015-06
7 2015-07
8 2015-08
9 2015-09
10 2015-10
11 2015-11
12 2015-12
说明:用nl显示文件的内容,nl -b a 空白行也加上行号
[root@myhost yuki]# nl -b a ./log2015.log
1 2015-01
2 2015-02
3 #空白行显示行号
4 2015-03
5 2015-04
6 2015-05
7 2015-06
8 2015-07
9 2015-08
10 2015-09
11 2015-10
12 2015-11
13 2015-12
说明:让行号在屏幕的最左边显示
[root@myhost yuki]# nl -n ln ./log2015.log
1 2015-01
2 2015-02
#空白行默认不显示行号
3 2015-03
4 2015-04
5 2015-05
6 2015-06
7 2015-07
8 2015-08
9 2015-09
10 2015-10
11 2015-11
12 2015-12
说明:让行号前面自动补上0(行号默认为位),统一输出格式
[root@myhost yuki]# nl -n rz ./log2015.log
000001 2015-01
000002 2015-02
#空白行默认不显示行号
000003 2015-03
000004 2015-04
000005 2015-05
000006 2015-06
000007 2015-07
000008 2015-08
000009 2015-09
000010 2015-10
000011 2015-11
000012 2015-12
[root@myhost yuki]# nl -n rz -w 3 ./log2015.log
001 2015-01
002 2015-02
003 2015-03
004 2015-04
005 2015-05
006 2015-06
007 2015-07
008 2015-08
009 2015-09
010 2015-10
011 2015-11
012 2015-12