Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

Linux/Bashのcatコマンドの使い方と実例 – オプション一覧付きでわかりやすく解説

catコマンドとは

Linux/Bashにおけるcat(concatenate=連結)コマンドは、ファイルの内容を読み取って表示するために最もよく使われるコマンドです。指定したファイルの中身をそのまま出力します。

catはファイルを標準出力へ連結します。デフォルトではコンソール(画面)に出力されるため、ファイルの内容を手軽に確認したいときに非常に便利です。

それ以外にもさまざまな用途がありますが、まずは基本となる構文から見ていきましょう。

catコマンドの構文

cat [OPTIONS] [FILE]

押さえておきたいポイントは以下の通りです。

  • FILEを指定しない場合は、標準入力(stdin)から読み込みます
  • FILEは複数指定でき、スペースで区切って並べます
  • OPTIONSには、後述のオプション一覧から必要なものを指定します
  • コマンドの出力は標準出力(stdout)経由で行われます

主なオプション

catコマンドでよく使われるオプションの一覧です(ユーザーマニュアルより抜粋)。

オプション説明
-A, --show-all-vET の指定と同等
-b, --number-nonblank空行以外の出力行に行番号を付ける(-nより優先)
-e-vE の指定と同等
-E, --show-ends各行の末尾に $ を表示する
-n, --numberすべての出力行に行番号を付ける
-s, --squeeze-blank連続する空行を1行に圧縮する
-t-vT の指定と同等
-T, --show-tabsTAB文字を ^I として表示する
-v, --show-nonprintingLFDとTAB以外の非印字文字を ^ および M- 表記で表示する

完全なマニュアルは、いつでも次のコマンドで確認できます。

man cat

標準入力(stdin)と標準出力(stdout)とは?

この概念自体は別途じっくり解説が必要なテーマですが、catコマンドは動作がとてもシンプルなので、標準ストリームを学ぶ最初の題材として最適です。詳しくは「標準入出力」の解説記事をご参照ください。

ファイルの内容をコンソール(stdout)に表示する

cat text.txt

使い方はこれだけです。catがファイルを読み込み、その内容をコンソールに出力してくれます。

ファイルの内容はstdout経由で出力されます。デフォルトではデータがそのままコンソールに送られますが、別のプログラムへリダイレクトすることも可能です。

ファイルの内容を他のコマンドに渡す(stdin経由)

cat text.txt | less

前述の標準入出力の仕組みのとおり、catの出力は他のコマンドの入力へそのまま渡せます。

上記のコマンドでは、text.txtの内容がパイプ(|)によってlessコマンドに送られます。長いファイルでもスクロールしながら快適に閲覧できるようになります。

複数のファイルを結合する

コマンド名の由来でもある「連結(concatenate)」機能です。複数のファイルを1つにまとめる方法を見てみましょう。

cat file1 file2 > mergedfile

catは複数のファイルから同時に読み込むことができるため、出力をリダイレクトで1つのファイルに保存すると、読み込んだすべてのファイルの内容が順番に連結された新しいファイルが作成されます。

まとめ

catコマンドは「ファイルの中身を見る」というシンプルな用途だけでなく、パイプやリダイレクトと組み合わせることで、テキスト処理の起点として幅広く活用できる基本コマンドです。まずはcat ファイル名で表示を試し、慣れてきたらオプションや他コマンドとの連携にも挑戦してみてください。

  1. Windows 10にBash(Linuxシェル)をインストールして使う方法【WSL完全ガイド】

    Windows上でLinuxシェルをセットアップして使う方法を、Windows Subsystem for Linux(WSL)を使って解説します。 このチュートリアルは、2020年以降にリリースされた最新版のWindows 10を対象としています。古いバージョンのWindows 10でのWSLの使い方や、Windows 8/7/XP向けの別の方法については扱いません。サポートが終了したソフトウェアの使用は避けるべきだからです。どうしてもWindowsを使わなければならない場合は、必ずセキュリティ更新プログラムが提供されているバージョンを使用してください。 WSLは非常に優れたツールで、まるで

  2. Linuxのwatchコマンドの使い方と実用例をわかりやすく解説

    Linuxのwatchコマンドは、指定したコマンドを一定間隔で繰り返し実行し、その結果を画面に表示し続けるためのツールです。コマンドの出力が時間とともにどう変化するかをリアルタイムで監視したい場合に非常に便利です。この記事では、watchコマンドの基本的な使い方と、覚えておくと役立つ実用的な例を紹介します。 watchコマンドの基本構文 watchコマンドの構文は以下のとおりです。 watch オプション コマンド 各要素の意味は次のとおりです。 オプション: 後述の表から選択したオプションを指定します。watchコマンドのデフォルト動作を変更できます。 コマンド: watchが繰り返し実行