nl命令

时间:2021-05-27 07:19:11

nl (Number of Lines) 将指定的文件添加行号标注后写到标准输出。如果不指定文件或指定文件为"-" ,程序将从标准输入读取数据。

选项:

-b, --body-numbering=样式    使用指定样式编号文件的正文行目
-d, --section-delimiter=CC 使用指定的CC 分割逻辑页数
-f, --footer-numbering=样式 使用指定样式编号文件的页脚行目
-h, --header-numbering=样式 使用指定样式编号文件的页眉行目
-i, --page-increment=数值 设置每一行遍历后的自动递增值
-l, --join-blank-lines=数值 设置数值为多少的若干空行被视作一行 -n, --number-format= 格式 根据指定格式插入行号
-p, --no-renumber 在逻辑页数切换时不将行号值复位
-s, --number-separator=字符串 可能的话在行号后添加字符串
-v, --starting-line-number=数字 每个逻辑页上的第一行的行号
-w, --number-width= 数字 为行号使用指定的栏数
--help 显示此帮助信息并退出
--version 显示版本信息并退出 默认的选项设置是-v1 -i1 -l1 -sTAB -w6 -nrn -hn -bt -fn。CC 是用于分隔逻辑页数的两个分界符,其中缺失的第二个字符暗含了":",如果您要指定"\",
请输入"\\"。可用的样式如下: a 对所有行编号
t 对非空行编号
n 不编行号
pBRE 只对符合正则表达式BRE 的行编号 FORMAT 是下列之一: ln 左对齐,空格不用0 填充
rn 右对齐,空格不用0 填充
rz 右对齐,空格用0 填充

示例1:显示行号

[root@localhost ~]# nl test.txt
#!/bin/bash
hello
world

示例2:显示行号,指定对齐方式

[root@oracledb study]# nl -nln test1.log 

[root@oracledb study]# nl -nrn test1.log 

[root@oracledb study]# nl -nrz test1.log 

示例3:指定宽度为4位,默认为6位

[root@oracledb study]# nl -nrz -w  test1.log 

示例4:将标准输入的内容编号

[root@localhost ~]# nl
te
te
yi
yi
ur
ur
按下Ctrl+D结束

示例5:or EOF(End Of File)

[root@localhost ~]# nl <<EOF
> hello
> linux
> mage
>
> WE
> EOF
hello
linux
mage WE