指令名称:

    nl - 显示文件的行数及内容
语法:
    nl [OPTION]... [FILE]...
说明:
    将指定文件的内容附加上行数,显示到标准输出。

当没有指定文件名或使用 "-" 符号时,数据将由标准输入读入。
选项:
    -b  --body-numbering=STYLE
         自订附加的行号样式(STYLE)
    -d  --section-delimiter=CC
         使用 CC 字符分辨标头、内容和脚注 
     -f  --footer-numbering=STYLE
         自订脚注附加的行号样式(STYLE) 
    -h  --header-numbering=STYLE
         自订标头附加的行号样式(STYLE)
     -i --page-increment=NUMBER
         自订行的递增数(NUMBER)
     -l --join-blank-lines=NUMBER 
        指定空白行的合并行数(NUMBER),将 n 行合并成一行。 
    -n  --number-format=FORMAT
        指定附加行数的格式(FORMAT)
    -p --no-renumber
        分页后不重设行数 
    -s  --number-separator=STRING
        插入指定的字符串(STRING)分隔行号和内容
    -v --first-page=NUMBER
        设定每页第一行的行数(NUMBER) 
   -w --number-width=NUMBER
        自订显示行数的位数(NUMBER)
  --help
        显示程序用法信息
  --version
        显示程序本身的版本信息

指令预设的选项为 -v1 -i1 -l1 -sTAB -w6 -nrn -hn -bt -fn。

在选项说明中所提到的样式(STYLE)可以是以下其中一个:
     a 每一行都加上行号
     t 只有非空白的行才加上行号
    n 每一行都不加行号
    pREGEXP 只有行内容符合正规表示式的才加上行号

在选项里中的格式(FORMAT)可以是以下其中一个:
    ln 向左对齐,前面不加零补位
    rn 向右对齐,前面不加零补位
    rz 向右对齐,前面加零补位

实例说明:
    在 cat 指令有个 -n 选项,能为输出加上行数。但 nl 指令则提供了更多这方面的弹性。 
 1.加上行数
        # cat -n fileA
        # nl fileA
    以上这两种方式,都可以为文件 fileA 的显示,加上需要的行号。
    但如果想要让附加的行数,做左右对齐或者是补零的动作就得依赖 nl 指令来做了。
       # nl -n rz fileA
          000001  /home
          000002  |-- SourceCode
          000003  |   |-- MySQL
          000004  |   |   |-- filter-requires-mysql.sh
          000005  |   |   |-- my.cnf
          .....

#
  2.变更行数的递增值、显示位数
     预设的行数递增值是1,但这可以改变。选项 -i 可以让我们做到这一点。
        # nl -i 2 fileA
           1  /home
           3  |-- SourceCode
           5  |   |-- MySQL
           7  |   |   |-- filter-requires-mysql.sh
           9  |   |   |-- my.cnf
           .....
        #
  3.除了递增值以外,还有设定显示行数的位数。也就是 -w 选项,程序的默认值为6。

如果有必要的话,我们可以自行更改。
        # nl -n rz -w 3 bb
           001     /home
           002     |-- SourceCode
           003     |   |-- MySQL
           004     |   |   |-- filter-requires-mysql.sh
           005     |   |   |-- my.cnf
           .....
       #

原网站地址:http://blog.chinaunix.net/uid-639516-id-2692145.html

Chocoo

2016.3.8

------------------------------------------------------------------------------------------------------------------------------------------------

Linux新人,欢迎各种指点。

感谢锋哥指点迷津!

nl命令很好,很强大的更多相关文章

  1. Unix / 类 Unix shell 中有哪些很酷很冷门很少用很有用的命令?(转)

    著作权归作者所有. 商业转载请联系作者获得授权,非商业转载请注明出处. 作者:孙立伟 链接:http://www.zhihu.com/question/20140085/answer/14107336 ...

  2. Linux下nl命令的用法详解

    Linux中nl命令和cat命令很像,不过nl命令会打上行号,属于比较不常用的命令,下面随小编一起来了解下这个鲜为人知的nl命令吧. nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文 ...

  3. locate,nl命令

    locate 命令 locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案.其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之 ...

  4. iPhone 6 被盗记录二【写在315前夕:苹果售后福州直信创邺在没有三包的情况下帮小偷翻新、助力小偷换机销赃!无视王法。让人震惊,痛心,憎恨!消费者很受伤很无奈】

    投诉公司: 北京直信创邺数码科技有限公司  标题: 写在315前夕:苹果售后在没有三包的情况下帮小偷翻新.助力小偷换机销赃!无视王法.让人震惊,痛心,憎恨!消费者很受伤很无奈 期望: 还我手机,或者赔 ...

  5. 迅雷9、迅雷极速版之迅雷P2P加速:流量吸血鬼?为什么你装了迅雷之后电脑会感觉很卡很卡?

    原文地址:http://www.whosmall.com/post/90 关闭极速版迅雷ThunderPlatform.exe进程 ThunderPlatform.exe目的:利用P2P技术进行用户间 ...

  6. 每天一个linux命令(11):nl命令

    nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...

  7. 每天一个linux命令(9):nl命令

    nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...

  8. nl命令详解

    nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...

  9. [转]linux之nl命令

    转自:http://www.cnblogs.com/peida/archive/2012/11/01/2749048.html nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容 ...

  10. Linux学习之nl命令

    nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...

随机推荐

  1. 【转】[慢查优化]联表查询注意谁是驱动表 & 你搞不清楚谁join谁更好时请放手让mysql自行判定

    转自:http://zhengyun-ustc.iteye.com/blog/1942797 写在前面的话: 不要求每个人一定理解 联表查询(join/left join/inner join等)时的 ...

  2. DiscreteSeekBar---->SeekBar的使用

    build: compile 'org.adw.library:discrete-seekbar:1.0.0' 在布局中的使用: <org.adw.library.widgets.discret ...

  3. ==和equals()的用法

    先看一段代码: public class TestEqual{ public static void main(String [ ] args){ //基本类型比较 int a = 100; int ...

  4. php 获取某个月的周次信息

    在做统计的时候如果按照周统计 ,需要对某个月的周次信息进行计算,如果本月头一天不是星期一,则向上一个月取周一,本月最后的几天如果不能正好是一周,则忽略. 例如 2019-09月计算出来的结果 2016 ...

  5. composer 常用命令

    composer list 列出所有可用的命令 composer init 初始化 composer.json文件(就不劳我们自己费力创建啦),会要求输入一些信息来描述我们当前的项目,还会要求输入依赖 ...

  6. 绘制3D的托卡马克位形图的matlab脚本文件 ThreeD.m

    % 绘制3D的托卡马克位形图, (V 0.1 by Jiale Chan for Y. H. Huang) % Dee Formula % 特征参数     rzero = 2.0;     rmax ...

  7. 九度OJ 题目1384:二维数组中的查找

    /********************************* * 日期:2013-10-11 * 作者:SJF0115 * 题号: 九度OJ 题目1384:二维数组中的查找 * 来源:http ...

  8. java数组的拷贝四种方法:for、clone、System.arraycopy、arrays.copyof

    public class ArrayCopy{ public static void main(String []args){ int []a = {1,3,4,5}; toPrint(a); int ...

  9. An NIO.2 primer--reference

    Part 1: The asynchronous channel APIs The More New I/O APIs for the Java™ Platform (NIO.2) is one of ...

  10. Reactor构架模式--转载

    原文:http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece76310468a3b404380143c86964868d4e419ce3b464 ...