サイトアイコン ITC Media

【簡単】catコマンドでファイルを表示する方法とその実例

(最終更新月:2023年3月)

✔このような方へ向けて書かれた記事となります

「catコマンドって何ができるの?」

「catコマンドの具体例が見たい」

「catコマンドでできることをすべて知りたい」

✔当記事を通じてお伝えすること

当記事では、catコマンドの基本についてはもちろん、catコマンドのオプションについて具体例付きで解説しています。

ぜひ最後までご覧ください。

筆者プロフィール

【現職】プロダクトマネージャー

【副業】ブログ(月間20万PV)/YouTube/Web・アプリ制作

「プログラミング × ライティング × 営業」の経験を活かし、30後半からのIT系職へシフト。現在はプロダクトマネージャーとして、さまざまな関係者の間に入り奮闘してます。当サイトでは、実際に手を動かせるWebアプリの開発を通じて、プログラミングはもちろん、IT職に必要な情報を提供していきます。

【当ブログで紹介しているサイト】

当サイトチュートリアルで作成したデモ版日報アプリ

Django × Reactで開発したツール系Webアプリ

✔人に見せても恥ずかしくないコードを書こう

「リーダブルコード」は、わかりやすく良いコードの定義を教えてくれる本です。

  • 見るからにきれいなコードの書き方
  • コードの分割方法
  • 変数や関数の命名規則

エンジニアのスタンダートとすべき基準を一から解説しています。

何回も読むのに値する本なので、ぜひ手にとって読んでみてください。

catコマンドで知っておくべきこと

catコマンドで知っておくべきことについて解説していきます。

catコマンドはLinuxやMac OSなどのシステムで頻繁に使用され、知っておくととても便利です。

catコマンドとは?

catコマンドは、UnixやLinuxなどのオペレーティングシステムで使用され、ファイルの内容を表示するもの。

応用した使い方では、複数のファイルを連結して表示することも可能なコマンドです。

catは、「concatenate」の略語であり、複数のファイルを連結する機能も持ち合わせているのです。

catコマンドの書き方とは?

catコマンドの書き方は以下のとおり。

cat [オプション] [ファイル名]

itc.txtを例とすると、以下のようになります。

cat itc.txt

catとファイル名の間にはスペースで区切るようにしてください。

正しく入力すれば、ファイルの内容がターミナルに表示されます。

catコマンドを使うべき場面

catコマンドを使うべき場面は以下のようなとき。

catコマンドを使用して、ターミナル上でログファイルの中身を確認するなどが可能です。

catコマンドは、複数のファイルを一度に表示することができるため、複数のファイルを結合して表示する場合や、ファイルの中身を確認する場合に便利である。

catコマンドで行数を指定する方法

catコマンドで行数を指定する方法は、-nオプションを使うことで実現できます。

nオプションでheadと組み合わせると、表示するファイルの先頭から指定した行数だけを表示できるのです

例えば、itc.txtのファイルの先頭から5行だけを表示するには以下のとおり。

cat -n itc.txt | head -5

catコマンドを使って、表示するファイルの行数を制限したいときは、-nオプションを使いましょう。

catコマンドの出力から文字を検索する方法

catコマンドの出力から文字を検索するには、grepコマンドと組み合わせる必要があります。

grepコマンドは、テキストファイル内の文字列を検索するためのコマンドで、catコマンドで表示されたテキスト内を検索できるのです。

例えば、catコマンドで表示されたテキストから「apple」という文字列を検索したい場合、以下のようにgrepコマンドを使います。

cat itc.txt | grep apple

このコマンドを実行することで、itc.txtファイル内の「apple」という文字列が含まれる行が表示されます。

catコマンドで表示されたテキストから特定の文字列を検索するには、grepコマンドを利用するのです。

catコマンドで新たなファイルを作成する方法

catコマンドで新たなファイルを作成できます。

方法は以下のとおり。

cat itc.txt > new.txt

「>」を使うことで、新たなファイルを作成できるのです。

catコマンドのオプション一覧を徹底解説

catコマンドのオプション一覧について解説していきます。

catコマンドのオプションについて理解すると、catコマンドをより応用して使えるようになります。

行番号を表示する:-n

catコマンドの-nオプションは、ファイルの内容を表示する際に、各行の先頭に行番号を表示するオプション。

cat -n itc.txt
     1	これは1行目
     2	これは2行目
     3	これは3行目
     4	これは4行目
     5	これは5行目
     6	これは6行目
     7	これは7行目
     8	これは8行目
     9	これは9行目
    10	これは10行目

headと組み合わせれば、表示する行数を制限できます。

cat -n itc.txt | head -6
     1	これは1行目
     2	これは2行目
     3	これは3行目
     4	これは4行目
     5	これは5行目
     6	これは6行目

空白行以外の行にのみ行番号を表示する:-b

-bオプションを使うと、空白行外に行番号を割り振ります。

例えば、以下のテキストで試してみましょう。

$nano -n itc2.txt
     1	これはファイル2つ目の1行目
     2	これはファイル2つ目の2行目
     3	これはファイル2つ目の3行目
     4	これはファイル2つ目の4行目
     5	これはファイル2つ目の5行目
     6	
     7	
     8	
     9	これはファイル2つ目の6行目
    10	これはファイル2つ目の7行目
    11	これはファイル2つ目の8行目
    12	これはファイル2つ目の9行目
    13	これはファイル2つ目の10行目
$ cat -b itc2.txt
     1	これはファイル2つ目の1行目
     2	これはファイル2つ目の2行目
     3	これはファイル2つ目の3行目
     4	これはファイル2つ目の4行目
     5	これはファイル2つ目の5行目



     6	これはファイル2つ目の6行目
     7	これはファイル2つ目の7行目
     8	これはファイル2つ目の8行目
     9	これはファイル2つ目の9行目
    10	これはファイル2つ目の10行目

連続した空白行を1行にまとめる:-s

-sオプションは、複数の連続した空行をまとめるオプションです。

上のitc2.txtで試してみると以下のとおり。

$ cat -s itc2.txt
これはファイル2つ目の1行目
これはファイル2つ目の2行目
これはファイル2つ目の3行目
これはファイル2つ目の4行目
これはファイル2つ目の5行目

これはファイル2つ目の6行目
これはファイル2つ目の7行目
これはファイル2つ目の8行目
これはファイル2つ目の9行目
これはファイル2つ目の10行目

各行の末尾に$を表示する:-E

-Eオプションは、行の末尾に「$」をつけます。

$ cat -E itc.txt
これは1行目$
これは2行目$
これは3行目$
これは4行目$
これは5行目$
これは6行目$
これは7行目$
これは8行目$
これは9行目$
これは10行目$
$
$
$

タブ文字を^Iとして表示する:-T

catコマンドの-Tオプションは、タブで空けられたスペースを「^I」と表示します。

以下のとおり違いを見てください。

$ cat itc3.txt
これは1行目	タブであけて文を書く
これは2行目	タブであけて文を書く
これは3行目	タブであけて文を書く
$ cat -T itc3.txt
これは1行目^Iタブであけて文を書く
これは2行目^Iタブであけて文を書く
これは3行目^Iタブであけて文を書く

制御文字を^として表示する:-v

-vオプションを使うと、制御文字を「^」として表示できます。

制御文字とは、通信や機器の制御で使われる文字のこと。あまり見る機会はないかもしれません。

$ cat -v itc.txt
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/1M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/2M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/3M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/4M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/5M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/6M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/7M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/8M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/9M-hM-!M-^LM-gM-^[M-.
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/10M-hM-!M-^LM-gM-^[M-.


バッファリングを無効にする:-u

-uオプションを使うと、バッファリングを無効にし、すぐに出力されるようになります。

通常のcatコマンドとは異なり、リアルタイムでのログ表示などに便利です。

$ cat -u itc.txt

制御文字を表示する:-A

catの-Aオプションは、ファイルの制御文字を表示するオプション。

制御文字は通常は非表示になっているのです。

$ cat -A itc.txt
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/1M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/2M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/3M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/4M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/5M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/6M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/7M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/8M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/9M-hM-!M-^LM-gM-^[M-.$
M-cM-^AM-^SM-cM-^BM-^LM-cM-^AM-/10M-hM-!M-^LM-gM-^[M-.$
$
$
$

catコマンドのWindowsにおける扱い方

Windowsでcatコマンドを使う方法を見ていきましょう。

なぜならデフォルトの設定ではWindows上でcatコマンドが使えないから。

LinuxのcatコマンドをWindowsでおこなう方法

LinuxのcatコマンドをWindowsで使うには、以下のようなUnix環境を提供するソフトウェアをインストールする必要があります。

なぜならcatコマンドはLinuxやUnix系のOSで標準的に使われるコマンドで、Windowsには標準で搭載されていないからです。

CygwinやGit Bashは、Windows上でUnix環境をエミュレートすることができるソフトウェアです。

もしくはWindowsでLinux環境が構築できる「wsl」を使用するのも方法のひとつです。

Linuxのcatコマンドをコマンドプロンプトで実施するには?

Windowsでは、typeコマンドを使うと、catと同じようにファイルの内容を表示できます。

type itc.tokyo

Windowsでは、typeコマンドを使いましょう。

まとめ:catコマンドを使えば、ファイルを開かずに中が見える

当記事の内容をまとめます。

Linuxでは、catコマンドはよく使われます。

ただしオプションを使いこなしている人も少ないはず。

ぜひオプションやほかのコマンドと組み合わせながら、作業効率を高めましょう。

モバイルバージョンを終了