Linux命令之nl命令
nl 命令在 Linux 系统中用来计算文件中行号。nl 可以将输出的文件内容自动的加上行号,其默认的结果和
与 cat -n 有点不太一样,nl 可以将行号做比较多的显示设计,包括位数是否自动补齐 0 等等的功能
1.命令格式:
nl [选项] [文件]
2.命令参数:
-b : 指定行号指定的方式,主要有两种 -b a :表示无论是否为空行,也同样列出行号(类似 cat -n) -b t:表示有空行,空的那一行不要列出行号(默认值) -n:列出行号表示的方法,主要有三种 -n ln :行号在萤幕的最左方显示; -n rn :行号在自己栏位的最右方显示,且不加 0 ; -n rz :行号在自己栏位的最右方显示,且加 0 ; -w :行号栏位的占用的位数; -p :在逻辑定界符处不重新开始计算。
3.使用示例
#Eaxmple01 用 nl 列出 log2018.log 的内容
命令:
nl log2018.lg
输出如下(文件中没有空白行):
[root@VM_81_181_centos xiaoming]# nl log2018.log 1 2018-01 2 2018-02 3 2018-03 4 2018-04 5 2018-05 6 2018-06 7 2018-07 8 2018-08 9 2018-09 10 2018-10 [root@VM_81_181_centos xiaoming]#
输出如下(文件中有空白行):
[root@VM_81_181_centos xiaoming]# nl log2018.log 1 2018-01 2 2018-02 3 2018-03 4 2018-04 5 2018-05 6 2018-06 7 2018-07 8 2018-08 9 2018-09 10 2018-10 [root@VM_81_181_centos xiaoming]#
说明:文件中的空白行,nl 不会加上行号
# Example02 用 nl 列出 log2018.log 的内容,空白行也加上行号
[root@VM_81_181_centos xiaoming]# nl -b a log2018.log 1 2018-01 2 2018-02 3 2018-03 4 2018-04 5 6 7 2018-05 8 2018-06 9 2018-07 10 2018-08 11 2018-09 12 2018-10 [root@VM_81_181_centos xiaoming]#
使用 cat -n 输出如下(文件中有空白行):
[root@VM_81_181_centos xiaoming]# cat -n log2018.log 1 2018-01 2 2018-02 3 2018-03 4 2018-04 5 6 7 2018-05 8 2018-06 9 2018-07 10 2018-08 11 2018-09 12 2018-10 [root@VM_81_181_centos xiaoming]#
说明:文件中的空白行,cat -n 会加上行号
# Example03 列出行号的显示位置
[root@VM_81_181_centos xiaoming]# nl -b a -n ln log2018.log 1 2018-01 2 2018-02 3 2018-03 4 2018-04 5 6 7 2018-05 8 2018-06 9 2018-07 10 2018-08 11 2018-09 12 2018-10 [root@VM_81_181_centos xiaoming]# nl -b a -n rn log2018.log 1 2018-01 2 2018-02 3 2018-03 4 2018-04 5 6 7 2018-05 8 2018-06 9 2018-07 10 2018-08 11 2018-09 12 2018-10 [root@VM_81_181_centos xiaoming]# nl -b a -n rz log2018.log 000001 2018-01 000002 2018-02 000003 2018-03 000004 2018-04 000005 000006 000007 2018-05 000008 2018-06 000009 2018-07 000010 2018-08 000011 2018-09 000012 2018-10 [root@VM_81_181_centos xiaoming]#
nl -b a -n rz 命令默认为 6 位,如果要调整位数,可以加上-w 3 调整为 3 位
[root@VM_81_181_centos xiaoming]# nl -b a -n rz -w 3 log2018.log 001 2018-01 002 2018-02 003 2018-03 004 2018-04 005 006 007 2018-05 008 2018-06 009 2018-07 010 2018-08 011 2018-09 012 2018-10 [root@VM_81_181_centos xiaoming]#