nl コマンド
目的
ファイル内の行に番号を付けます。
構文
nl [ -b Type ] [ -f Type ] [ -h Type ] [ -l Number ] [ -d Delimiter ] [ -i Number ] [ -n ] [ -v 数値 ] [ -w 数値 ] [ -p ] [ -s Separator ] [ File ]
説明
nl コマンドは、File パラメーター (デフォルトでは標準入力) を読み取り、入力データ内の各行に番号を付けて、その番号付き行を標準出力に書き出します。 出力では、nl コマンドはコマンド・ラインで指定されたフラグに従って行の左端に番号を付けます。
入力テキストは論理ページに書き込む必要があります。 各論理ページはヘッダー、本文、フッター部から構成されます (いずれかの部分に入力がなくてもかまいません)。 -p フラグを使用しない限り、 nl コマンドは、各論理ページの先頭の行番号をリセットします。 行番号付けフラグは、ヘッダー、本文、 フッター部とは独立して設定できます (例えば、ヘッダーおよびフッター行に番号を付け、テキスト行には付けないようにできます)。
ファイル内では、次の区切り文字のみが入っている行を使って、 論理ページの各部分の先頭を示すシグナルを送ります。
| 行の内容 | 先頭 |
|---|---|
| \:\:\: | ヘッダー |
| \:\: | 本文 |
| \: | フッター |
コマンド・ラインではファイルを 1 つしか指定できません。 フラグとファイル名はどんな順序ででもリストできます。
フラグ
デフォルトではすべてのパラメーターが設定されます。 デフォルトの設定を変更する場合は、次のフラグを使用します。 -s フラグを除き、デフォルト値を表示させるには変数を指定しないで -n フラグを入力します。
| 項目 | 説明 |
|---|---|
| -b タイプ | 番号を付ける本文の行を選択します。 Type 変数に指定できる値は次のとおりです。
|
| -d 区切り文字 | 論理ページ部の始めの区切り文字として Delimiter 変数で指定した 2 文字を使用します。 デフォルトの区切り文字は ¥: (円記号、コロン) です。 ASCII 文字 2 文字、1 バイト拡張文字 2 文字、 または拡張文字 1 文字を指定できます。 -d フラグの後に 1 バイト文字を 1 つだけ入力すると、 2 番目の文字はデフォルト (コロン) のままになります。 円記号を区切り文字として使用する場合は円記号を 2 つ (¥¥) 入力します。 |
| -f タイプ | 番号を付ける論理ページのフッターの行を選択します。 Type 変数に指定できる値は、 -b フラグの値と同じです。 Type 変数のデフォルト値は n です (行番号を付けない)。 |
| -h タイプ | 番号を付ける論理ページのヘッダーの行を選択します。 Type 変数に指定できる値は、 -b フラグの値と同じです。 Type 変数のデフォルト値は n です (行番号を付けない)。 |
| -i 数値 | 論理ページの行番号を Number 変数に指定した数だけ増分します。 Number 変数のデフォルト値は 1 です。 Number 変数の範囲は、1 から 250 です。 |
| -l 番号 | (L の小文字) Number パラメーターに指定した値の連続するブランク行数を、ブランク行の 1 行分として数える数として使用します。 例:-l3連続する 3 番目のブランク行ごとに番号が付けられます。 Number 変数のデフォルト値は 1 です。 このフラグは、 -ha、 -ba、または -fa オプションが設定されている場合に機能します。 Number 変数の範囲は、1 から 250 です。 |
| -n フォーマット | Format に指定した値を行番号付けフォーマットとして使用します。 指定できる値は次のとおりです。
|
| -p (-p) | 論理ページ区切り文字の位置で番号付けを再開しません。 |
| -s 区切り文字 | Separator 変数で指定した文字でテキストと行番号を区切ります。 Separator 変数のデフォルト値はタブ文字です。 |
| -v 数値 | 論理ページの初期行番号を、Number 変数に指定した値に設定します。 Number 変数のデフォルト値は 1 です。 Number 変数の範囲は、0 から 32767 です。 |
| -w 数値 | Number 変数に指定した値を行番号の文字数として設定します。 Number 変数のデフォルト値は 6 です。 Number 変数の範囲は 1 から 20 です。 |
終了状況
このコマンドは、以下の終了値を戻します。
| 項目 | 説明 |
|---|---|
| 0 | 正常終了。 |
| >0 | エラーが発生しました。 |
例
- 非ブランク行だけに番号を付けるには、次のように入力します。
以下の番号付きリストが表示されます。chap1本文セクション内の非ブランク行のみに番号を付けます。 指定する場合は、chap1区切り文字 \:\:\ +: または \: が含まれていない場合は、ファイル全体が本文と見なされます。nl chap1 - すべての行に番号を付けます。
ここでは、ブランク行を含めて本文中のすべての行に番号が付けられます。 ほとんどの場合は、このフォーマットの nl コマンドで十分です。nl -ba chap1 - 別の行番号形式を指定するには、次のように入力します。
これは、次の行に番号を付けます。chap110 で始まる (-v10) 数えて数えています (-i10)。 数値ごとに 4 桁が表示されます (-w4)、先行ゼロ (-nrz)。 行番号とテキストは、次の 2 つのコロンで区切られます。-s : :).nl -i10 -nrz -s:: -v10 -w4 chap1例えば、chap1次のテキストが含まれます。
番号付きリストは次のようになります。A not-so-important note to remember: You can't kill time without injuring eternity.
ブランク行には番号が付いていないことに注意してください。 これを行うには、例 2 に示すように、 -ba フラグを使用します。0010::A not-so-important 0020::note to remember 0030::You can't kill time 0040::without injuring eternity.
ファイル
| 項目 | 説明 |
|---|---|
| /usr/bin/nl | nl コマンドを含みます。 |