Linux, コマンド · 1 min read · Sep 14, 2025

初心者のためのLinux nlコマンドチュートリアル(7つの例)

Linuxは多くのテキストフォーマットコマンドラインツールを提供しており、それぞれ異なる目的があります。その中の1つがnlで、ファイル内の行に番号を付けることができます。このチュートリアルでは、いくつかのわかりやすい例を使ってこのコマンドの基本を説明します。

しかし、その前に、このチュートリアルで使用されるすべての例は、Ubuntu 16.04 LTSシステムでテストされていることを言及しておく価値があります。

Linux nlコマンド

前述のように、nlコマンドはファイル内の行に番号を付けます。以下がその構文です:

nl [OPTION]... [FILE]...

そして、manページでは次のように説明されています:

各FILEを標準出力に書き込み、行番号を追加します。FILEが指定されていない場合、またはFILEが-の場合は、標準入力を読み取ります。

以下は、nlの動作をよりよく理解するためのQ&Aスタイルの例です。

Q1. nlコマンドの使い方は?

nlの基本的な使い方は非常に簡単です。行に番号を付けたいファイルの名前を引数として渡すだけです。

nl [filename]

以下はその例です:

nlコマンドの使い方

Q2. 空行に番号を付けるには?

デフォルトでは、nlコマンドは空行に番号を付けません:

空行に番号を付ける方法

しかし、必要であれば、-bコマンドラインオプションに値’a’を渡すことでこの動作を変更できます。

nl -b a [filename]

空行に番号を付ける方法 - 結果

Q3. 番号のインクリメント値をカスタマイズするには?

デフォルトでは、番号のインクリメント値は1です。しかし、-iコマンドラインオプションを使用してこれをカスタマイズできます。

nl -i [new-inc-val] [filename]

例えば:

番号のインクリメント値をカスタマイズする方法

Q4. nlが複数の空行を1つとして扱うようにするには?

これには、-lコマンドラインオプションを使用します。manページでは次のように説明されています:

NUMBER(デフォルトは1)連続する空行を1つの論理行として扱い、最後の行のみを番号付けします。NUMBER未満の連続する空行が発生した場合、それらには番号を付けません。空行とは、文字が含まれていない行であり、スペースやタブも含まれません。

例えば、次のファイルを考えてみましょう:

nlが複数の空行を1つとして扱う方法

そして、nlが8つの連続する空行を番号付けのために1つの論理行として扱うようにしたいとします。その場合、実行するコマンドは次のようになります:

nl -b a -l 8 [filename]

nlが8つの連続する空行を考慮するようにする

Q5. 異なる番号付け形式を使用するには?

-nコマンドラインオプションを使用して番号付け形式を指定できます。利用可能なオプションには、左揃え、右揃え、先頭にゼロを付けた右揃えがあります。これらはln、rn、rzの値を使用してアクセスできます。

以下は、これらすべての形式を示す例です:

異なる番号付け形式の使用方法

Q6. カスタマイズされた番号区切り文字を使用するには?

デフォルトでは、番号と行を区切る文字はTABです。しかし、必要であれば、-sコマンドラインオプションを使用してこれをカスタマイズできます。このオプションには新しい区切り文字を入力として要求します。

例えば、ダブルコロン(::)を新しい区切り文字として使用したい場合、次のようにできます:

nl -s :: [filename]

カスタマイズされた番号区切り文字の使用方法

Q7. nlが異なる開始行番号を使用するようにするには?

デフォルトでは、番号付けは1から始まります。しかし、-vコマンドラインオプションを使用してこれを変更できます。以下のようにします:

nl -v [new-start-number] [filename]

nlが異なる開始行番号を使用するようにする

結論

nlコマンドは理解しやすく、使いやすいです。このチュートリアルでは、提供されるコマンドラインオプションの大部分をカバーしました。これらの練習が終わったら、ツールのmanページにアクセスしてさらに学んでください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。