
新Linux入門|catコマンド徹底解説:行番号表示・空行除去・特殊文字可視化の実践
Linuxでテキストファイルの内容を確認したいとき、もっとも基本的で便利なコマンドが cat(キャット)コマンド です。
「cat」は “concatenate(連結する)” の略で、複数のファイルを結合して内容を表示したり、ファイルの中身を一気に出力したりするために使われます。
しかし、単に内容を表示するだけではありません。
行番号の表示・空行の除去・特殊文字の可視化など、実務で役立つ多彩なオプションを使いこなすことで、より正確なテキスト確認やログ解析が行えます。
ここでは AlmaLinux 9.6 環境を前提に、catコマンドの実践的な使い方をやさしく解説します。

🐱catコマンドとは?
cat コマンドは、LinuxやUnix系システムでテキストファイルの内容を標準出力(画面)に表示したり、複数のファイルを結合して出力したりするコマンドです。
ファイルの中身を「確認したい」「別のファイルにまとめたい」など、日常的な作業で頻繁に利用されます。
また、簡単なリダイレクト(> や >>)と組み合わせることで、ファイル作成にも活用できます。
コマンド書式
cat [オプション] [ファイル名...]| 項目 | 説明 |
|---|---|
| cat | ファイルの内容を表示・連結するコマンド |
| [オプション] | 表示形式や制御動作を指定 |
| [ファイル名] | 表示・結合したいファイル名を指定 |
💡 ポイント
- ファイルを指定しない場合、標準入力から受け取った内容をそのまま出力します。
- パイプ(|)と組み合わせて、他のコマンドに内容を渡すこともできます。
⚙️ 主なオプション一覧と説明
| オプション | 説明 |
|---|---|
| -n | 行番号を付けて出力する(空行も含む) |
| -b | 行番号を付けて、空行を除いた行にのみ番号を付ける。 |
| -E | 各行の末尾に「$」を表示する。 |
| -T | タブ文字を「^I」として表示する。 |
| -s | 連続する空行を1行にまとめて表示する。 |
| -A | -vET をまとめて指定。非表示文字をすべて可視化 |
| -v | 制御文字など非表示文字を可視化する。 |
| -h, --help | ヘルプを表示する。 |
💬 解説
ログファイルなどを確認する際、単に cat で内容を出すだけではなく、
「行番号を付けたい」「空行を減らしたい」「制御文字を見たい」といったニーズに応えるのがこれらのオプションです。
🖥️ 使用例と出力解説
① ファイルの内容を表示する
[suzuki@AlmaLinux ~]$ cat sample.txt
Hello Linux!
Welcome to AlmaLinux 9.6.
This is a test file.📘 説明
単純にファイルの中身を表示する基本的な使い方です。
出力はそのまま画面に表示され、ファイルの内容を確認できます。
② 行番号を付けて出力する(-n)
[suzuki@AlmaLinux ~]$ cat -n sample.txt
1 Hello Linux!
2 Welcome to AlmaLinux 9.6.
3 This is a test file.📘 説明
-n オプションを指定すると、すべての行に行番号が付与されます。
行番号付きのログ確認やスクリプトの行管理などに役立ちます。
③ 空行を除いて行番号を付ける(-b)
[suzuki@AlmaLinux ~]$ cat -b sample.txt
1 Hello Linux!
2 Welcome to AlmaLinux 9.6.
←(空行には番号が付きません)
3 This is a test file.📘 説明
-b は空行を無視して行番号を付けます。
設定ファイルなど、空行を多用するファイルを扱うときに便利です。
④ 行末にマークを表示(-E)
[suzuki@AlmaLinux ~]$ cat -E sample.txt
Hello Linux!$
Welcome to AlmaLinux 9.6.$
This is a test file.$📘 説明
-E を使うと、行末に「$」を表示します。
改行位置を明確にしたいときや、不要なスペース・改行を確認したいときに役立ちます。
⑤ タブ文字を可視化(-T)
[suzuki@AlmaLinux ~]$ cat -T tab_sample.txt
Item1^I100
Item2^I250
Item3^I400📘 説明
-T オプションを使うと、タブ文字が「^I」として表示されます。
データファイルやCSVの確認に便利です。
⑥ 連続する空行をまとめて表示(-s)
[suzuki@AlmaLinux ~]$ cat -s blank.txt
Line 1
Line 2
Line 3📘 説明
-s オプションは、連続する空行を1行に圧縮します。
大量の空行を含むログや設定ファイルをすっきり表示できます。
⑦ 特殊文字をすべて可視化(-A)
[suzuki@AlmaLinux ~]$ cat -A control.txt
Hello^IWorld!$
^[[31mThis is red text^[[0m$📘 説明
-A は -vET の組み合わせで、制御文字・行末・タブをすべて表示します。
見えない制御コードを確認したいときにとても便利です。
🧠 ちょっと便利な応用例
| コマンド例 | 説明 |
|---|---|
| cat file1.txt file2.txt | 複数ファイルを連結して表示 |
| cat file1.txt file2.txt > merged.txt | 2つのファイルを結合して新しいファイルに出力 |
| cat -n /etc/passwd | 行番号付きでシステムユーザー情報を確認 |
| cat -s /var/log/messages | ログの空行を整理して見やすく表示 |
💡 補足
リダイレクト(> や >>)と組み合わせると、ファイル作成・追記も可能です。
ただし、誤って > で上書きしないよう注意しましょう。
⚠️ 注意点とヒント
| 状況 | 原因 | 対策 |
|---|---|---|
| ファイルが大きすぎて画面が流れる | 出力が多い | less や more と組み合わせる(例:cat file.txt |
| 権限エラー | ファイルに読み取り権限がない | sudoやchmodでアクセス権を確認 |
| 文字化け | エンコーディングの違い | iconvコマンドなどで変換して確認 |
✅ まとめ:catコマンドは「見る+整える」の万能ツール!
cat コマンドは、Linuxでもっとも基本的かつ重要なツールのひとつです。
単にファイルを「見る」だけでなく、オプションを活用すれば
「見やすく整える」「不要な空行を整理する」「特殊文字を可視化する」こともできます。
💡 覚えておきたいポイント
- -n:行番号を付けて全行を表示
- -b:空行を除いて番号表示
- -E:行末を「$」で明示
- -T:タブを「^I」で表示
- -s:空行をまとめてすっきり
- -A:すべての特殊文字を可視化
シンプルなコマンドながら、ログ確認やデバッグ、ファイル整形の強力な味方。
今日から cat コマンドを使いこなして、Linux操作をもっと快適にしましょう!
