カテゴリ: Linuxコマンド集 更新日: 2026/01/26

cat -nオプションの使い方|Linuxで全ての行に行番号を付ける方法を解説

cat -nオプション|全ての行に行番号を付ける方法
cat -nオプション|全ての行に行番号を付ける方法

先生と生徒の会話形式で理解しよう

生徒

「先生、テキストファイルの中身を見たいときによくcatコマンドを使うんですが、行番号があったらもっと見やすいと思うんです。」

先生

「確かに、行番号があると読みやすくなりますよね。そんなときはcat -nオプションが便利ですよ。」

生徒

「えっ、そんなオプションがあるんですか?どうやって使うんですか?」

先生

「それでは、cat -nの基本的な使い方から、実際の例まで一緒に見ていきましょう!」

1. cat -nとは?

1. cat -nとは?
1. cat -nとは?

catコマンドは、Linuxでファイルの中身を表示する基本的なコマンドのひとつです。「キャット」と読みます。もともとの意味は「concatenate(連結する)」ですが、実際には「中身を見る」用途でよく使われます。

そのcatコマンドに-nオプションをつけると、すべての行に自動的に行番号をつけて表示してくれます。複数行のファイルを読むときに、どこを見ているのか分かりやすくなるので、とても便利な機能です。

2. 基本的な使い方

2. 基本的な使い方
2. 基本的な使い方

例えば、example.txtというファイルがあるとします。その中身を、行番号つきで表示したい場合は、以下のように入力します。


cat -n example.txt
     1  こんにちは
     2  今日も良い天気ですね
     3  明日も晴れるといいですね

このように、行の先頭に数字が付いて表示されます。これがcat -nの特徴です。

3. 実際にファイルを作って試してみよう

3. 実際にファイルを作って試してみよう
3. 実際にファイルを作って試してみよう

まだexample.txtがない場合は、次のようにして作成できます。


echo -e "こんにちは\n今日も良い天気ですね\n明日も晴れるといいですね" > example.txt

この-eオプションは、\n(改行)を認識させるためのものです。そして、作成したファイルに対してcat -nを使えば、先ほどのように行番号つきで表示されます。

4. catだけじゃない!似たようなコマンドとの違い

4. catだけじゃない!似たようなコマンドとの違い
4. catだけじゃない!似たようなコマンドとの違い

cat -nと似たコマンドで、nlというものもあります。nlは「number lines(行に番号を付ける)」の略で、目的は同じですが、より細かい設定(空行の扱いや桁数の指定など)ができます。


nl example.txt
     1	こんにちは
     2	今日も良い天気ですね
     3	明日も晴れるといいですね

見た目は似ていますが、cat -nはよりシンプルで直感的なので、初心者にはこちらの方が扱いやすいです。

5. cat -nとcat -bの違いに注意!

5. cat -nとcat -bの違いに注意!
5. cat -nとcat -bの違いに注意!

実はcatには、-bというオプションもあります。こちらは空行を除いて行番号をつけるという違いがあります。

たとえば、空行を含むファイルがあったとしましょう。


echo -e "1行目\n\n3行目" > sample.txt

このとき、cat -nはすべての行に番号をつけますが、


cat -n sample.txt
     1  1行目
     2  
     3  3行目

cat -bでは空行には番号をつけません。


cat -b sample.txt
     1  1行目
     
     2  3行目

どちらが便利かは目的次第ですが、cat -nは「すべての行に確実に番号をつけたい」場合に向いています。

6. cat -nはファイルが複数でも使える!

6. cat -nはファイルが複数でも使える!
6. cat -nはファイルが複数でも使える!

複数のファイルをまとめて番号付きで表示したいときも、cat -nは使えます。例えば、file1.txtfile2.txtを連結して、通し番号で表示したい場合は次のようにします。


cat -n file1.txt file2.txt
     1  ファイル1の1行目
     2  ファイル1の2行目
     3  ファイル2の1行目
     4  ファイル2の2行目

このように、ファイルをまたいでも連番で行番号が振られるので、比較や確認作業の際にとても便利です。

7. 行番号つき出力を別ファイルに保存する方法

7. 行番号つき出力を別ファイルに保存する方法
7. 行番号つき出力を別ファイルに保存する方法

cat -nで表示した内容を、別のファイルとして保存しておきたいときは、リダイレクト(>)を使います。


cat -n example.txt > numbered.txt

このコマンドで、example.txtの内容に行番号をつけてnumbered.txtというファイルに保存できます。保存したファイルは、あとで印刷や共有するときにも便利です。

関連記事:
カテゴリの一覧へ
新着記事
New1
ファイル・ディレクトリ操作
realpath --canonicalize-existingオプションの使い方を解説!Linuxで既存パスだけ絶対パス化する方法
New2
ファイル・ディレクトリ操作
basenameの--zeroオプションでヌル文字区切り!xargsと安全に連携するLinuxの基本
New3
ファイル・ディレクトリ操作
find -userオプションの使い方を完全ガイド!初心者でもわかる所有者ユーザーでファイルを検索する方法
New4
ファイル・ディレクトリ操作
find -okオプションとは?初心者向けに丁寧解説!Linuxで確認付きコマンド実行をマスターしよう
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cdコマンドとは?Linuxでディレクトリを移動する基本を初心者向けに解説
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門