中身を見る

INPUT · スライド

ファイルの中身を出す

01 / 08

`ls` は名前しか教えてくれない

前の章で ls は使えるようになったね。でも ls が見せてくれるのは名前だけだよ。

memo.txt という名前は分かっても、そこに何が書いてあるかは分からない。中を見るには別の道具が要る。

この章では開かずに中を確かめる道具を覚えるよ。最初の1つが cat だよ。

~ $ lsaisatsu.txt  memo.txt  namae.txt  recipe

02 / 08

cat — まるごと画面に出す

cat のうしろにファイル名を書くと、中身をそのまま画面に出すよ。

開いて、読んで、閉じる——という3つの手が、1行で終わる。編集はできないけれど、確かめるだけならこれがいちばん速いよ。

~ $ cat aisatsu.txtおはよう

03 / 08

名前の由来は「つなぐ」

cat は猫ではなくて、concatenate(つなぐ)の略だよ。

もともとは「複数のファイルをつないで1つにする」ための道具で、中身を出すのはそのついでだったんだ。ファイルを1つしか書かなければ、つなぐものが無いのでそのまま出てくる、というだけ。

だから2つ書けば、続けて出てくるよ。

~ $ cat aisatsu.txt namae.txtおはようさとうすずきたかはし

04 / 08

-n で行番号を振る

-n を付けると、行の頭に番号が付くnumber(番号)の頭文字だよ。

「エラーが 12 行目で出た」と言われたときに、その行を数えるのに使える。

オプションは前の章の ls -l ls -a と同じ形。コマンドのうしろに - と1文字、という書き方はこれからずっと出てくるよ。

~ $ cat -n namae.txt     1	さとう     2	すずき     3	たかはし

05 / 08

大きいファイルに使ってはいけない

cat には弱点がひとつあるよ。

中身が何万行あっても、全部出そうとする。途中で止まってはくれない。だからログのような大きなファイルに使うと、画面が滝のように流れて、最後の数行しか残らないんだ。

そのために head(頭だけ)と less(少しずつめくる)がある。この章のあとのレッスンで扱うよ。

cat は短いファイル専用、と覚えておこう。

06 / 08

`>` でファイルに書く

cat は画面に出すだけじゃなくて、新しいファイルを作るのにも使えるよ。

> は「出すぐちをファイルに向ける」という記号。cat a.txt b.txt > c.txt と書くと、つないだ結果が画面ではなく c.txt に入る。

この > は「つなぐ」の章でくわしくやるので、いまはそういう記号があるとだけ知っておいて大丈夫だよ。

~ $ cat aisatsu.txt namae.txt > zenbu.txt~ $ cat zenbu.txtおはようさとうすずきたかはし

07 / 08

無いファイルを指すと

ありもしないファイルを cat すると、こう出るよ。

これは前の章で cd を打ちまちがえたときと同じメッセージだね。No such file or directory(そんなファイルも入れ物も無い)。

Linux のエラーは種類が少なくて、同じものが何度も出てくる。だから1つ読めるようになると、他の場面でも読めるようになるよ。

~ $ cat nai.txtcat: nai.txt: No such file or directory

08 / 08

さあ、打ってみよう

ここからは端末に打つ番だよ。

答え合わせは画面に出た文字で見るので、cat ./memo.txt のように書いても正解。前の章と同じで、書き方をそろえる必要はないよ。