在Linux系統中計算文件內容行號
nl命令 讀取 file 參數(缺省情況下標準輸入),計算輸入中的行號,將計算過的行號寫入標準輸出。在輸出中,nl命令根據您在命令行中指定的標志來計算左邊的行。輸入文本必須寫在邏輯頁中。每個邏輯頁有頭、主體和頁腳節(可以有空節)。除非使用-p
選項,nl 命令在每個邏輯頁開始的地方重新設置行號。可以單獨為頭、主體和頁腳節設置行計算標志(例如,頭和頁腳行可以被計算然而文本行不能)。其默認的結果與cat -n
有點不太一樣, nl 可以將行號做比較多的顯示設計,包括位數與是否自動補齊0等等的功能。
nl (選項) (參數)
-b :指定行號指定的方式,主要有兩種:
-b a :表示不論是否為空行,也同樣列出行號(類似 cat -n);
-b t :如果有空行,空的那一行不要列出行號(默認值);
-n :列出行號表示的方法,主要有三種:
-n ln :行號在螢幕的最左方顯示;
-n rn :行號在自己欄位的最右方顯示,且不加 0 ;
-n rz :行號在自己欄位的最右方顯示,且加 0 ;
-w :行號欄位的占用的位數。
-p :在邏輯定界符處不重新開始計算。
用 nl 列出 log2015.log 的內容 :
root@localhost [test]# nl log2015.log
1 2015-01
2 2015-02
3 ======[root@localhost test]#
說明:文件中的空白行,nl 不會加上行號
用 nl 列出 log2015.log 的內容,空本行也加上行號 :
[root@localhost test]# nl -b a log2015.log
1 2015-01
2 2015-02
3
4
5 ======[root@localhost test]#
讓行號前面自動補上0,統一輸出格式:
[root@localhost test]# nl -b a -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
000013 =======
[root@localhost test]# nl -b a -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
013 =======
說明:nl -b a -n rz
命令行號默認為六位,要調整位數可以加上參數-w 3
調整為3位。