カテゴリ: Linuxコマンド集 更新日: 2025/11/24

cat -bオプション|空行を除いて行番号を付ける

cat -bオプション|空行を除いて行番号を付ける
cat -bオプション|空行を除いて行番号を付ける

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

生徒

「Linuxでファイルの行に番号を付けて表示したいんですけど、どうすればいいですか?」

先生

「それならcatコマンドに-bオプションを付けると、空行を除いて番号を振ることができますよ。」

生徒

「空行は飛ばすんですか?全部に番号がつくと思ってました!」

先生

「実は、空行も含めて番号を振りたいなら-nを使います。-bは中身がある行だけに番号を付けたい時に便利なんです。」

1. cat -bとは?空行を除いて行番号を付ける便利なオプション

1. cat -bとは?空行を除いて行番号を付ける便利なオプション
1. cat -bとは?空行を除いて行番号を付ける便利なオプション

catコマンドは、Linuxでテキストファイルの内容を表示したり連結したりする基本コマンドですが、-bオプションを付けることで、空白行(空行)を除いた行番号の表示ができるようになります。

たとえば、プログラムや設定ファイルの内容を読みやすくしたいとき、「意味のある行だけに番号を振って確認したい」と思うことはありませんか? そんなときに活躍するのがcat -bです。

2. cat -bの基本的な使い方

2. cat -bの基本的な使い方
2. cat -bの基本的な使い方

まずは、普通にcatを使ってファイルを表示してみましょう。次のようなテキストファイルがあるとします。


cat sample.txt
Hello, Linux!

This is a test file.

Have a nice day.

このファイルは4行ありますが、うち2行目と4行目は空白(何も書かれていない)行です。これをcat -bで表示してみましょう。


cat -b sample.txt
     1	Hello, Linux!

     2	This is a test file.

     3	Have a nice day.

空行には行番号が付かず、中身のある行だけに番号が振られていますね。

3. -bと-nの違いを理解しよう

3. -bと-nの違いを理解しよう
3. -bと-nの違いを理解しよう

-bと似たオプションに-nがあります。両者の違いは以下のとおりです。

  • -b:空行を除いた行にのみ番号を付ける
  • -n:すべての行に番号を付ける(空行にも)

cat -n sample.txt
     1	Hello, Linux!
     2	
     3	This is a test file.
     4	
     5	Have a nice day.

行番号を全体に均等に振りたいなら-n、中身のある行だけ番号が欲しい場合は-bを使いましょう。

4. 空行が重要な意味を持つ場合の注意点

4. 空行が重要な意味を持つ場合の注意点
4. 空行が重要な意味を持つ場合の注意点

テキストファイルの中には、空行が「区切り」や「見出しの間隔」として重要な意味を持つことがあります。cat -bを使えば、内容のある行に集中して読み取ることができるので、構造の把握やデバッグにも役立ちます

特に設定ファイル(confファイルなど)やスクリプトの確認では、コメントや空行を無視してコードだけに注目したい場面が多く、-bはとても重宝します。

5. 行番号の表示幅と見やすさ

5. 行番号の表示幅と見やすさ
5. 行番号の表示幅と見やすさ

cat -bを使うと、行番号の桁は自動的に整列されます。番号のあとにはタブ文字が入り、内容との間にスペースが確保されるため、整った見た目で一覧しやすくなっています。

行番号が増えてもレイアウトが崩れないので、大量の行があるログファイルなどにも適しています。

6. 他のcatオプションとの組み合わせ例

6. 他のcatオプションとの組み合わせ例
6. 他のcatオプションとの組み合わせ例

catコマンドは、-bだけでなく他のオプションと組み合わせることもできます。ただし、-n-bは同時に使えません。指定した場合は、-bが優先されます。

たとえば、-b-T(タブを^Iで表示)を組み合わせると次のようになります。


cat -bT sample.txt
     1	Hello,^ILinux!

     2	This^Iis^Ia^Itest^Ifile.

     3	Have^Ia^Inice^Iday.

このように、タブ文字がどこにあるのかを確認しながら、行番号も見やすく表示できます。

7. sedやawkとの違いと使い分け

7. sedやawkとの違いと使い分け
7. sedやawkとの違いと使い分け

行番号を付けるという操作は、sedawkなどのテキスト処理ツールでも可能ですが、cat -bはとにかく手軽で覚えやすいのが特徴です。

簡単に番号を確認したいだけならcat -bが最適です。プログラムで複雑な処理や条件分岐が必要な場合にのみawkなどを使えば十分です。

カテゴリの一覧へ
新着記事
New1
ファイル・ディレクトリ操作
stat -Lオプションの使い方を解説|シンボリックリンクをたどってファイル情報を確認しよう
New2
ファイル・ディレクトリ操作
realpath -eオプションの使い方を解説!Linuxで存在するファイルのみ絶対パスを取得する方法
New3
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
New4
ファイル・ディレクトリ操作
touch --referenceオプションの使い方を完全ガイド!初心者でもわかるタイムスタンプのコピー方法
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cpコマンドとは?Linuxでファイルやディレクトリをコピーする基本操作を初心者向けに解説
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
lsコマンドとは?Linuxでファイルやディレクトリを一覧表示する基本を初心者向けに解説