はじめに
エンジニアの日常では、ファイルを作るだけでなく中身を読む・書き換える作業が頻繁に発生します。設定ファイルの値を確認したり、サーバーが書き出すログ(動作の記録)を眺めてエラーを探したり、メモを書き残したり——どれも CLI の上で完結できます。
この回では、ファイルの中身を「見る」コマンド(cat・less・head・tail)と、ターミナル上でテキストを「編集する」エディタ(nano)の基本を、手を動かしながら身につけます。エディタ(editor)とは、文章やプログラムの文字を書いたり書き換えたりするための道具(ソフト)のことです。
1. 中身を見る
ファイルの中身を表示するコマンドにはいくつか種類があり、ファイルの大きさや目的によって使い分けます。まずは4つの代表的なコマンドを順番に見ていきましょう。
ここでは、次のような複数行のテキストファイル sample.txt があるものとして説明します。
1行目:はじめての行
2行目:ふたつめの行
3行目:みっつめの行
(…中略…)
20行目:最後の行
cat:ファイルの中身を全部まとめて表示する
cat は concatenate(連結する) の略で、ファイルの中身を最初から最後まで一気に画面に表示します。短いファイルの中身をサッと確認するのに向いています。
$ cat sample.txt
期待される出力(例):
1行目:はじめての行
2行目:ふたつめの行
3行目:みっつめの行
(…中略…)
20行目:最後の行
行数が多いファイルに cat を使うと、画面を一瞬で流れていって最後しか見えません。そういうときは次の less を使います。
less:1ページずつスクロールして読む
less は、長いファイルをページ単位でゆっくり読むためのコマンドです。こうした「閲覧専用の表示ツール」をページャと呼びます。
$ less sample.txt
実行すると画面がファイルの先頭で止まり、キー操作で読み進めます。よく使う操作は次の通りです。
| キー | 動き |
|---|---|
| スペース | 次のページへ進む |
b | 前のページへ戻る |
| ↑ / ↓ | 1行ずつ上下に動く |
q | less を終了して元の画面に戻る |
覚えておくこと:
lessから抜けられなくなったらqを押す。 初心者がいちばん戸惑うのが「lessで開いたあと、どうやって普通の画面に戻るのか」です。答えはq(quit の頭文字)です。
head・tail:先頭だけ/末尾だけを見る
ファイル全体ではなく、先頭の数行だけや末尾の数行だけを見たいときに使います。
head(頭):ファイルの先頭を表示するtail(しっぽ):ファイルの末尾を表示する
どちらもオプションを付けないと、先頭または末尾の10行を表示します。
$ head sample.txt
期待される出力(例):
1行目:はじめての行
2行目:ふたつめの行
3行目:みっつめの行
4行目:よっつめの行
5行目:いつつめの行
6行目:むっつめの行
7行目:ななつめの行
8行目:やっつめの行
9行目:ここのつめの行
10行目:とおめの行
-n:表示する行数を指定する
-n のあとに数字を付けると、その行数だけ表示します。たとえば先頭3行だけ見たいときはこうします。
$ head -n 3 sample.txt
期待される出力(例):
1行目:はじめての行
2行目:ふたつめの行
3行目:みっつめの行
tail も同じように -n で行数を指定できます。末尾2行だけ見てみましょう。
$ tail -n 2 sample.txt
期待される出力(例):
19行目:おわりの手前の行
20行目:最後の行

tail -f:追記される内容をリアルタイムで追いかける
-f(follow の略)を付けると、ファイルの末尾を表示したまま待機し、新しい行が書き加えられるたびに自動で表示してくれます。サーバーのログを「いま何が起きているか」リアルタイムで監視するときの定番です。
$ tail -f access.log
期待される出力(例):
2026-05-29 14:30:01 GET /index.html 200
2026-05-29 14:30:05 GET /about.html 200
(…新しいログが追記されるたびに、ここに1行ずつ増えていく…)
tail -f は止まらず動き続けるので、見終わったら Ctrl+C(コントロールキーを押しながら C)で終了します。

使い分けまとめ
| コマンド | 何を表示するか | 向いている場面 |
|---|---|---|
cat | 全体を一気に | 短いファイルの中身をサッと確認 |
less | 1ページずつ(q で終了) | 長いファイルをじっくり読む |
head | 先頭(既定で10行) | ファイルの冒頭・見出しだけ確認 |
tail | 末尾(既定で10行) | ログの最新部分を確認 |
tail -f | 末尾+追記をリアルタイム表示 | 動いているログを監視 |
2. 空ファイルを作る・テキストを書き込む
中身を見る前に、まずは中身を入れる「器」を用意する操作も押さえておきましょう。
touch:空のファイルを作る
L2 で学んだ touch は、指定した名前のファイルが無ければ空のファイルを新しく作るコマンドでした。ここでは編集の出発点として使います。
$ touch memo.txt
$ cat memo.txt
期待される出力(例):
作ったばかりなので中身は空っぽです(cat しても何も表示されません)。
echo “…” > file:その場でテキストを書き込む
echo は、書いた文字をそのまま画面に出すコマンドです。
$ echo "Hello Linux"
期待される出力(例):
Hello Linux
この echo の結果を、画面ではなくファイルに送り込むのが >(だいなり記号)です。次のように書くと、memo.txt の中身が Hello Linux という1行に置き換わります。
$ echo "Hello Linux" > memo.txt
$ cat memo.txt
期待される出力(例):
Hello Linux
補足: ここでは「
>を使うとファイルに書き込める」ことを体験として知っておけば十分です。>の正体であるリダイレクト(コマンドの出力先を切り替える仕組み)は、次回 L5 でまとめて詳しく解説します。
3. ターミナルで編集する
数行の書き込みなら echo でも足りますが、複数行のテキストをじっくり書くにはエディタを使います。ターミナルの中で動くエディタの定番が nano です。
nano:初心者にやさしいテキストエディタ
nano は、ターミナル内で動くシンプルなエディタです。引数に編集したいファイル名を指定して起動します(存在しなければ新規作成として開きます)。
$ nano memo.txt
実行すると、画面全体がエディタに切り替わり、次のような表示になります。
GNU nano 6.2 memo.txt
Hello Linux
_
^G ヘルプ ^O 書き込み ^W 検索 ^K 切り取り
^X 終了 ^R 読み込み ^\ 置換 ^U 貼り付け
画面のいちばん下に並んでいるのが操作メニューです。^(ハットマーク)は Ctrl キー を表します。つまり ^O は「Ctrl を押しながら O」という意味です。
nano の基本3ステップ
| 操作 | キー | 説明 |
|---|---|---|
| 編集 | (そのまま入力) | カーソル位置に文字を打ち込む・矢印キーで移動する |
| 保存 | Ctrl+O | 内容をファイルに書き込む(Output) |
| 終了 | Ctrl+X | nano を閉じて元のターミナルに戻る(eXit) |
具体的な手順は次の通りです。
- 本文を打ち込んだら、
Ctrl+Oを押します。画面下に書き込むファイル: memo.txtと確認が出るので、そのままEnterを押すと保存されます。 - 保存できたら
Ctrl+Xを押して nano を終了します。元のターミナル($のプロンプト)に戻れば成功です。 - もし保存せずに
Ctrl+Xを押した場合は、「変更を保存しますか?」と聞かれます。Yで保存、Nで破棄、Ctrl+Cで編集に戻れます。
覚えておくこと:保存は
Ctrl+O、終了はCtrl+X。 この2つさえ覚えれば nano は使えます。困ったときは画面下のメニューを見れば操作が書いてあります。
vim:もう一つの定番エディタ
ターミナルで使えるエディタには、nano のほかに vim(ヴィム) という非常に有名なものがあります。高機能で多くのエンジニアが愛用していますが、操作の流儀が独特で慣れが必要なため、本講座では名前の紹介にとどめます。まずは扱いやすい nano に慣れていきましょう。
演習
課題:nano でメモを書いて、中身を確認する
ホームディレクトリで、nano を使ってメモファイルを作り、保存して、cat と head で中身を確認する流れを通しでやってみましょう。
まず nano を起動します。
$ cd ~
$ nano memo.txt
エディタが開いたら、次の2行を入力してください。
今日学んだこと
cat と less と head と tail の使い分け
入力できたら Ctrl+O → Enter で保存し、Ctrl+X で終了します。ターミナルに戻ったら、cat で全体を確認します。
$ cat memo.txt
期待される出力(例):
今日学んだこと
cat と less と head と tail の使い分け
続けて、head -n 1 で先頭の1行だけを表示してみましょう。
$ head -n 1 memo.txt
期待される出力(例):
今日学んだこと
最後に、ls -l でファイルがちゃんと中身を持って保存されたことを確認します(サイズが 0 ではなくなっているはずです)。
$ ls -l memo.txt
期待される出力(例):
total 4
-rw-r--r-- 1 username username 69 May 29 15:10 memo.txt
演習の確認ポイント
- ☐
nanoでファイルを開き、Ctrl+Oで保存・Ctrl+Xで終了できましたか? - ☐
catでファイルの内容を確認できましたか? - ☐
head -n 1で先頭の1行だけを表示できましたか? - ☐
headとtailの違い(先頭を見る/末尾を見る)を自分の言葉で説明できますか?