メインコンテンツへスキップ
初級6分で読める

catでファイル内容表示

Linuxのcatコマンドでファイル内容を表示する方法と、連結・作成などの便利な使い方を解説します。

基礎編catファイル操作初心者向け表示

🎯 この記事で学べること

  • 1
    `cat`コマンドの基本的な使い方をマスターできます
  • 2
    ファイルの内容を表示する方法がわかります
  • 3
    複数ファイルの連結方法を理解できます
  • 4
    簡単なファイル作成テクニックを学べます
  • 5
    行番号表示などの便利なオプションが使えるようになります

読了時間: 約6

catコマンドとは

こんにちは!今回は、ファイルの中身を見るための基本コマンド、catについて学んでいきましょう。

catは「concatenate(連結)」の略ですが、実際にはファイルの内容を表示するために最もよく使われています。短いファイルの内容をサッと確認したいときに便利なコマンドです。Windowsでいうとメモ帳でファイルを開くようなイメージですが、もっと素早く内容を確認できます!

基本的な使い方

catコマンドの最も基本的な使い方は、ファイル名を指定して内容を表示することです。

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

上のPlaygroundで実行すると、greeting.txtの中身が全て表示されましたね!catは指定したファイルの内容を画面に出力します。

実行結果はこんな感じです:

$ cat greeting.txt
Hello, World!
Welcome to Linux
cat command is useful!

複数ファイルの表示と連結

catの本来の意味「連結」を活かして、複数のファイルを続けて表示できます。

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

ファイルの連結と保存

複数のファイルを連結して、新しいファイルとして保存することもできます:

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

リダイレクト(>)を使うことで、catの出力を新しいファイルに保存できます。これは複数のファイルを1つにまとめたいときに便利です!

よく使うオプション

catコマンドには、表示を見やすくするための便利なオプションがあります。

-n オプション(行番号表示)

-nオプションを使うと、各行に行番号を付けて表示できます。コードやログファイルを見るときに便利です!

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

-b オプション(空行以外に番号)

-bオプションは、空行を除いて行番号を付けます。

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

-s オプション(連続空行を圧縮)

-sオプションは、連続する空行を1行にまとめます。

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

🎮 理解度チェック

Q1: cat file1.txt file2.txtを実行すると何が起きますか?

cat file1.txt file2.txtを実行すると何が起きますか?

Q2: 行番号を表示するオプションは?

catコマンドで全ての行に行番号を付けて表示するオプションは?

Q3: cat > newfile.txtを実行すると何が起きますか?

cat > newfile.txtを実行すると何が起きますか?

実践的な使い方

簡単なファイル作成

catを使って、キーボードから直接ファイルを作成できます:

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

通常はcat > ファイル名の後、キーボードで内容を入力し、Ctrl+Dで終了しますが、上の例では「ヒアドキュメント」という技法を使って自動化しています。

ファイルの追記

>>を使うと、既存のファイルに内容を追加できます:

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

設定ファイルの確認

システムの設定ファイルを確認する際によく使います:

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

パイプと組み合わせた使用

catの出力を他のコマンドに渡すこともできます:

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

catコマンドの制限と代替

大きなファイルには不向き

catファイル全体を一度に表示するため、大きなファイルには向いていません:

# 大きなファイルをcatで見ると...
$ cat very_large_log.txt
# 画面が大量のテキストで埋まってしまう!

大きなファイルを見る場合は、lessmoreコマンドを使いましょう。これらはページ単位で表示してくれます。

用途に応じた使い分け

| 用途 | 推奨コマンド | 理由 | |------|------------|------| | 短いファイルの確認 | cat | 素早く全体を表示 | | 長いファイルの閲覧 | less | ページ単位で表示 | | ファイルの先頭確認 | head | 最初の数行だけ表示 | | ファイルの末尾確認 | tail | 最後の数行だけ表示 |

便利な使用例

複数ファイルの比較

# 2つの設定ファイルを並べて表示
echo "=== 開発環境 ==="
cat config.dev.ini
echo -e "\n=== 本番環境 ==="
cat config.prod.ini

ログファイルの結合

# 日付別のログを1つにまとめる
cat access.log.2025-01-* > january_access.log

テンプレートからファイル生成

CommandAcademy Terminal
Welcome to CommandAcademy Terminal!
Type "help" to see available commands.
user@cmdac:~$

ファイルツリー

/
etc
hosts35B
passwd76B
home
user
tmp
usr
bin
share
var
log

📝 まとめ

今回はcatコマンドについて学びました!

  • catファイルの内容を表示する基本コマンド
  • 複数ファイルを連結して表示・保存できる
  • -nで行番号表示、-bで空行以外に番号、-sで連続空行を圧縮
  • 簡単なファイル作成や追記にも使える
  • 大きなファイルにはlessmoreを使おう

次はheadコマンドでファイルの先頭部分だけを表示する方法を学びましょう!

YouTube動画で復習

動画でさらに詳しく学びたい方は、CommandAcademyのYouTubeチャンネルをチェック!視覚的にコマンドの動作を確認できます。

catコマンドは、Linuxでファイルを扱う際の基本中の基本です。短いファイルの確認、ファイルの連結、簡単なファイル作成など、日常的に使う場面がたくさんあります。まずは単純なファイル表示から始めて、徐々に応用的な使い方も試してみてくださいね!