Next: , Previous: tac invocation, Up: Output of entire files


3.3 nl: 行に番号を付けファイルに書き込む

nlは,それぞれのfile(‘-’は標準入力を意味します)や, 与えられない場合は標準入力を,いくつかの行または全ての行に行番号を加え て標準出力へ書き出します.概要です.

     nl [option]... [file]...

nlは,入力を(論理)ページに分解します.デフォルトで,それぞれ の論理ページのトップで,行番号が1にリセットされます.nlは全 ての入力ファイルを単一のドキュメントとして扱います.行番号や論理ページ をファイル間でリセットしません.

論理ページは三つのセクションから成立ちます.ヘッダ,ボディ,そしてフッ タです.任意のセクションを空にすることも可能です.それぞれ異なるスタイ ルで番号を付けることが可能です.

論理ページのセクションの最初は,以下のデリミタ文字列の一つを入力ファイ ルに単一行で含めることで示されます.

\:\:\:
ヘッダの始まり.
\:\:
ボディの始まり.
\:
フッタの始まり.

これらの文字列を構成する二つの文字を,‘\’と‘:’から変更するこ とはオプション(以下を参照)で可能ですが,パターンと文字列の長さの変更は 不可能です.

セクションデリミタは,出力では空行に置換されます.入力ファイルの,最初 のセクションのデリミタ文字列より前のあらゆるテキストは,ボディセクショ ンの一部と考えられるので,nlは,セクションデリミタが無いファ イルを,一つのボディセクションとして扱います.

プログラムは以下のオプションを受け入れます.Common optionsも参照 してください.

-b style
--body-numbering=style
それぞれの論理ページのボディセクションの行に対する番号付けのスタイルを 選択します.行が番号付けされないとき,現在の行番号は増加しませんが,行 番号と分離する文字列が行に前置されます.スタイルは以下のとおりです.
a
全ての行に番号を付けます.
t
(デフォルトでボディに対し)空でない行だけ,番号を付けます.
n
(デフォルトでヘッダやフッタに対し)番号を付けません.
pbre
基本正規表現breにマッチしたものを含む行だけ番号を付けます. See Regular Expressions.

-d cd
--section-delimiter=cd
セクションを分離する文字をcdに設定します.デフォルトは‘\:’ です.cのみ与えられた場合,二番目の‘:’はそのままです.(シェ ルが展開する‘\’やその他のメタ文字を,引用符やバックスラッシュの追 加で保護することを忘れないでください.)
-f style
--footer-numbering=style
--body-numberingの同類です.
-h style
--header-numbering=style
--body-numberingの同類です.
-i number
--page-increment=number
行番号をnumberずつ(デフォルトは1)増加します.
-l number
--join-blank-lines=number
number(デフォルトは1)連続した空行を,番号付としては一つの論理行 だと考え,最後のものだけに番号付けします.numberより少ない行の連 続した空行があるところでは番号付けをしません.空行とは,文字を含まずス ペースやタグも含まないものです.
-n format
--number-format=format
行の番号付けの書式を選択します(デフォルトはrnです).
ln
左寄せで,先頭にゼロを書きません.
rn
右寄せで,先頭にゼロを書きません.
rz
右寄せで,先頭にゼロを書きます.

-p
--no-renumber
論理ページの最初で,行番号をリセットしません.
-s string
--number-separator=string
出力で,stringを使って(デフォルトはTAB文字)テキスト行と行番号を 分離します.
-v number
--starting-line-number=number
それぞれの論理ページの行番号の初期値を,number(デフォルトは1)に 設定します.
-w number
--number-width=number
行番号に,number文字使います(デフォルトは6).

終了ステータスのゼロは成功を示し,ゼロ以外の値は失敗を示します.