本日はLinuxのcatコマンドの使い方について解説しよう。
catはLinuxの中でもっとも頻繁に使うコマンドのひとつだ。ファイルをみるときに頻繁に使うが、実はそれ以外にも使い道がある。
オプションも細かく説明するので、この機会にぜひ使い方をマスターしてしまおう。
目次
Linux catコマンドの基本
catコマンドによるファイルの閲覧
一番よく使われる使い方は、ファイルの閲覧だ。
例えば、fileAの中身を見たいとき、次のようにコマンドを打つ。
$ cat fileA
するとfileAの中身を出力することができる。
catコマンドによるファイルへの出力
出力は標準出力なので、リダイレクト「>」を用いることで、別のファイルに出力内容を記述することもできる。
$ cat fileA > fileB
上書きではなく、追加がしたければリダイレクトの「>>」を使用すれば良い。
$ cat fileA >> fileB
このように追加される。
catコマンドによるファイルの結合
catにはもともと「ファイルを連結して標準出力に出力する」というコマンド本来の意味合いがある。cat自体が、「連結する」を意味するconcatenateの略である。
これも非常に便利な機能だ。標準出力するだけなので、上記同様にファイルへ保存する場合にはリダイレクト「>」「>>」を用いる。
使い方は簡単で、catコマンドの後にファイルを並べればいい。
$ cat fileC fileD
$cat fileC fileD fileE
のように3つ以上の連結も可能だ。
catコマンドのオプション
主なオプションは次のとおりだ。
-n(--number)
「cat -n ファイル名」により、行番号をつけて出力する。これは使うことが多いオプションなので覚えてしまおう。"number"のnだ。
$ cat -n fileB
-b (--number-nonblank)
blankなし(空白行を入れずに)番号をつけて表示するオプション。"blank"のbで覚える。
$ cat -b fileB
-s(--squeeze-blank)
連続した空白行を1行の空白行にまとめるオプションだ。
$ cat -s fileB
-E(--show-ends)
各行の最後に"$"を表示するオプションだ。
$ cat -E fileB
連続した文字列の改行位置がわかりにくい場合に、$を入れることで確認することができる。
-T (--show-tabs)
タブを"^I"に置き換えて表示することもできる。
catに類似したLinuxコマンド
tacコマンド
まず、catの逆順で表示をする「tac」コマンドがある。冗談のようなコマンドだが、実際に動く。
$ tac fileA
知らない人が多いが意外に使える場面があるコマンドなので、ぜひ覚えておこう。
less コマンド
長いテキストを見るときはcatよりもlessコマンドの方が有効だ。合わせて覚えておこう。
まとめ
このようにlinuxのcatコマンドには様々できることがある。
- 指定されたファイルを標準出力へ出力する
- ファイルの新規作成
- ファイルへの追記
- ファイルのコピー
- ファイルの結合
- 行数の表示
- 連続する空白行を減らす
- 行末を見えるようにする
- タブを見えるようにする
などだ。一度コマンドを覚えてしまうと、なかなか調べ直すことなく時が経ってしまう。
ぜひ、この機会に「こんな使い方があったのか」というのだけ覚えてしまおう。
>concatnateの略である。
スペリングが間違ってます。
concat"e"nate
ご指摘いただき誠にありがとうございます。
該当箇所の誤字修正いたしました。
引き続き、ご愛読のほど、よろしくお願いいたします。
記事トップの画像中のスペリングが直ってません
猫=catに引っ掛けているなら、例えば conCATenate など、それと分かるような工夫が要ると思います。
ご指摘いただきありがとうございます。
該当画像差し替え完了いたしました。
また工夫につきましても今後の参考とさせていただきます。
引き続き、ご愛読の程宜しくお願い致します。