nl命令在linux系统中主要用于在输出文件内容时,为每一行都添加一个行号,和cat -n 命令类似,但是nl命令比cat -n命令更加灵活,提供了更多的格式化选项,方便用户处理更加复杂和特定格式的文件内容。
命令格式:nl 参数 文件名;参数可以为空;
如图1,是使用nl命令和cat -n命令查看同一个文本文件的内容:
图1
从输出内容可以看到,nl命令默认不将空白行算成一行,而cat -n命令会将空白行算作一行,因此虽然是同一个文件,但是显示的行数不一样。
参数说明-b参数:可以指定STYLE格式显示行号;如:
-b a表示空行也显示行号,如图命令1;
-b t表示只有非空行才有行号,即默认使用该参数,如图命令2;
-b n表示不显示行号,如图命令3;
-b PBRE表示使用正则表达式匹配,匹配成功才显示行号,如图2命令1,使用正则表达式,只显示内容有数字的行的行号;
图2
-n参数:用于指定行号的样式,如:
-n ln表示行号在左边,不加0,如图3命令1;
-n rn表示行号在右边,不加0,如图3命令2;
-n rz表示杭州在右边,加0,如图3命令3;
图3
-w参数:行号栏位占用的位数,默认是6位,如图4,使用-w 10命令,设置nl显示行号的时候,行号栏位位数为10;
图4