nl

行番号を付けて出力する(1)

構文

nl [-b {a,t,n,p}, --body-numbering={a,t,n,p}] [-f {a,t,n,p}, --footer-numbering={a,t,n,p}] [-h {a,t,n,p}, --header-numbering={a,t,n,p}] [-d CD, --section-delimiter=CD] [-i NUMBER, --page-increment=NUMBER] [-l NUMBER, --join-blank-lines=NUMBER] [-n {ln,rn,rz}, --number-format={ln,rn,rz}] [-p, --no-renumber] [-s STRING, --number-separator=STRING] [-v NUMBER, --first-page=NUMBER] [-w NUMBER, --number-width=NUMBER] [-p, --no-renumber] [FILE...]

オプション

-b {a,t,n,p}, --body-numbering={a,t,n,p} 本文の行番号表示形式を指定する(a:すべての行に行番号を付ける、t:空行以外に行番号を付ける(デフォルト)、n:行番号を付けない、pREGEXP:正規表現REGEXPにマッチする行だけ行番号を付ける)
-d CD, --section-delimiter=CD 論理ページの先頭を示す区切り文字(デリミタ)を2つ指定する。1つだけ指定した場合は2つ目は「:」となる。
-f {a,t,n,p}, --footer-numbering={a,t,n,p} フッタの行番号表示形式を指定する(a:すべての行に行番号を付ける、t:空行以外に行番号を付ける、n:行番号を付けない(デフォルト)、pREGEXP:正規表現REGEXPにマッチする行だけ行番号を付ける)
-h {a,t,n,p}, --header-numbering={a,t,n,p} ヘッタの行番号表示形式を指定する(a:すべての行に行番号を付ける、t:空行以外に行番号を付ける、n:行番号を付けない(デフォルト)、pREGEXP:正規表現REGEXPにマッチする行だけ行番号を付ける)
-i NUMBER, --page-increment=NUMBER 行番号の増分をNUMBERとする(デフォルトは1)
-l NUMBER, --join-blank-lines=NUMBER NUMBER行の連続した空行を1行とみなす。空行の連続が指定した行数以下なら行番号付けを行わない
-n {ln,rn,rz}, --number-format={ln,rn,rz} 行番号の出力書式を指定する(ln:左詰、先頭の0埋めをしない、rn:右詰、先頭の0埋めをしない、rz:右詰、先頭を0で埋める)
-p, --no-renumber 行番号を論理ページの先頭でリセットしない
-s STRING, --number-separator=STRING 行番号と本文の間の区切り文字をSTRINGに指定する(デフォルトはタブ)
-v NUMBER, --first-page=NUMBER 論理ページの行番号をNUMBERから始める(デフォルトは1)
-w NUMBER, --number-width=NUMBER 行番号の桁数をNUMBERに指定する(デフォルトは6)

説明

指定したファイルを読み込み、行番号を付けて出力する。ファイルが指定されなかった場合や「-」が指定された場合は、標準入力から読み込む。

用語解説

nlコマンドは、指定されたファイルすべてを1つの文書とみなし、それが論理ページで分割されているとみなす。論理ページはヘッダ、本文、フッタから構成され、それぞれのセクションを別の形式で行番号付けできる。行番号は論理ページの先頭で1にリセットされる。入力されたファイル内に、以下のような区切り文字だけの行があれば、それぞれ論理ページのセクションの始まりとみなす。
\:\:\: ヘッダの開始
\:\: 本文の開始
\: フッタの開始

使用例

テキスト・ファイルsample.txtに行番号を付けて出力する。

$ cat sample.txt
\:\:\:
Header
\:\:
Ubuntu
CentOS
Fedora
\:
Footer

$ nl -w 4 sample.txt

     Header

   1    Ubuntu
   2    CentOS
   3    Fedora

     Footer

関連事項

cat