nl 行に番号を付けて表示する
nl [オプション] [ファイル...]試してみる
nl lines.txt既定では、空行を除いた行に番号を付けます。
nl -b a lines.txt-b a で、空行を含むすべての行に番号を付けます。
nl -n ln -w 3 lines.txt番号を左に詰め、幅を3桁にします。
nl -n rz -w 4 lines.txt番号を右に寄せ、足りない桁を 0 で埋めます。
nl -s ': ' lines.txt番号と本文のあいだの区切りを変えます。
nl -v 10 -i 5 lines.txt番号を 10 から始め、5ずつ増やします。
主なオプション
-b 種類 | 番号を付ける行を選ぶ。a はすべて、t は空行以外(既定)、n は付けない |
|---|---|
-n 形式 | 番号の形式。ln は左詰め、rn は右詰め、rz は右詰めでゼロ埋め |
-w 数 | 番号の幅(桁数) |
-s 文字列 | 番号と本文のあいだに入れる文字列 |
-v 数 | 最初の番号 |
-i 数 | 番号の増分 |
解説
基本
nl は、行頭に行番号を付けて出力します。cat -n に似ていますが、どの行に付けるか、どんな形で付けるかを細かく指定できます。
空行の扱い
既定では、空行には番号を付けません(-b t)。これは cat -n との大きな違いです。すべての行に付けたいときは -b a を指定します。cat -n はすべての行に付け、cat -b が空行以外に付けるという対応です。
番号の形
既定は右詰めで、幅は6桁、番号と本文のあいだはタブです。-n、-w、-s で、形式、幅、区切りを変えられます。
番号の起点と増分
-v で最初の番号、-i で増分を指定します。
論理ページ
nl には、ページごとに番号を振り直す仕組みもあります。ただし、特別な区切り行を入力に入れる必要があり、ふつうの用途ではほとんど使いません。