ファイル操作入門 - mkdir/touch/echo/catを覚えよう

ファイル操作入門 - Linuxコマンドの基礎

この記事でできるようになること

  • mkdir で新しいディレクトリ(フォルダ)を作成できる
  • touch で空のファイルを作成できる
  • echo で文字を出力したり、ファイルに書き込んだりできる
  • cat でファイルの内容を表示できる

対象読者:pwd/cd/lsを習得した方、ファイル作成の次のステップに進みたい方

目次

  1. 導入:リナの次の一歩
  2. mkdir - ディレクトリを作ろう
  3. touch - 空のファイルを作ろう
  4. echo - 文字を出力しよう
  5. cat - ファイルの中身を見よう
  6. ミニ課題で手を動かそう
  7. よくあるミスと対処法
  8. 今日の3行まとめ
  9. 次に学ぶこと

導入:リナの次の一歩

リナ:ライニー先輩!この前教わった pwdcdls はバッチリ使えるようになりました!
ライニー先輩:お、すごいね!じゃあ次のステップに進もう。今度は「ファイルを作る」方法を覚えよう。
リナ:ファイルを作る...Windowsだと右クリックで「新規作成」ですけど、コマンドでもできるんですか?
ライニー先輩:もちろん!今日は4つのコマンドを覚えよう。mkdir(ディレクトリ作成)、touch(ファイル作成)、echo(文字出力)、cat(ファイル表示)。これができれば、自分でファイルを作って中身を書き込めるようになるよ。

mkdir - ディレクトリを作ろう

ライニー先輩:まずは mkdir コマンド。「Make Directory」の略で、新しいディレクトリ(フォルダ)を作るよ。
リナ:ディレクトリって、ファイルを入れる箱みたいなものですよね?
ライニー先輩:その通り!まずは練習用のディレクトリを作ってみよう。

基本的な使い方

$ mkdir practice
リナ:あれ?何も表示されないですけど、大丈夫ですか?
ライニー先輩:Linuxコマンドは「成功したら何も言わない」のが基本。確認したい時は ls を使おう。
$ ls
documents  downloads  practice  pictures

ここがポイントmkdir の結果は ls で確認する習慣をつけよう。Linuxでは「沈黙は成功の証」という考え方があり、エラーがなければ何も表示されないことが多いよ。

複数階層のディレクトリを一度に作る(-p オプション)

リナpractice の中にさらに lesson1 を作りたいんですけど...
ライニー先輩:いい質問!-p オプションを使うと、途中のディレクトリも一緒に作ってくれるよ。
$ mkdir -p practice/lesson1/exercises
リナpracticelesson1exercises が一気にできるんですね!

touch - 空のファイルを作ろう

ライニー先輩:次は touch コマンド。これは空のファイルを作るコマンドだよ。
リナ:「タッチ」って触るって意味ですよね?ファイルを触る...?
ライニー先輩:実は本来の用途は「ファイルのタイムスタンプ(最終更新日時)を更新する」こと。でも、ファイルが存在しない場合は新しく作ってくれるから、ファイル作成によく使われるんだ。

基本的な使い方

$ touch memo.txt
$ ls
documents  downloads  memo.txt  practice  pictures
リナmemo.txt ができました!でも中身は空っぽなんですよね?
ライニー先輩:そう。中身を書き込むには次の echo コマンドを使うよ。

複数ファイルを一度に作成

$ touch file1.txt file2.txt file3.txt
$ ls
file1.txt  file2.txt  file3.txt  memo.txt  ...

ここがポイントtouch は複数のファイル名をスペースで区切って指定すれば、一度に複数のファイルを作成できるよ。

echo - 文字を出力しよう

ライニー先輩echo コマンドは文字列を出力するコマンド。「こだま」という意味で、入力した文字をそのまま返してくれるよ。

画面に文字を表示

$ echo Hello
Hello
$ echo "Hello, Linux World!"
Hello, Linux World!
リナ:入力した文字がそのまま表示されますね。でも、これだけだとあまり使い道がないような...
ライニー先輩:そう思うよね。でも echo の本領発揮は「ファイルへの書き込み」なんだ。

ファイルに書き込む(リダイレクト)

$ echo "これはメモです" > memo.txt
リナ> って何ですか?
ライニー先輩:これは「リダイレクト」といって、普通は画面に出る文字を、ファイルの中に書き込むように「行き先を変える」機能だよ。> は「上書き」、>> は「追記」。水道の蛇口を別の場所に向けるようなイメージだね。
$ echo "1行目のメモ" > memo.txt
$ echo "2行目を追加" >> memo.txt

注意>(上書き)を使うと、ファイルの中身が完全に置き換わります。既存の内容を残したい場合は必ず >>(追記)を使いましょう。

cat - ファイルの中身を見よう

ライニー先輩:最後は cat コマンド。「concatenate(コンカテネイト、連結する)」の略で、ファイルの中身を表示するよ。
リナ:さっき echo で書き込んだ内容を見てみたいです!

基本的な使い方

$ cat memo.txt
1行目のメモ
2行目を追加
リナ:ちゃんと2行とも表示されてますね!
ライニー先輩cat はファイル全体を一気に表示するから、短いファイルの確認に便利だよ。

複数ファイルを連結して表示

$ echo "ファイル1の内容" > file1.txt
$ echo "ファイル2の内容" > file2.txt
$ cat file1.txt file2.txt
ファイル1の内容
ファイル2の内容

ここがポイントcat は複数のファイルを指定すると、連結して表示します。これが「concatenate(連結する)」という名前の由来です。

行番号を付けて表示(-n オプション)

$ cat -n memo.txt
     1  1行目のメモ
     2  2行目を追加

ミニ課題で手を動かそう

ライニー先輩:じゃあ、今日覚えた4つのコマンドを使って課題をやってみよう。

課題1:練習用ディレクトリを作成して移動しよう

やること:「my-project」というディレクトリを作り、その中に移動して、今いる場所を確認しよう。

ヒントを見る

mkdircdpwd を順番に使います。

解答例を見る
$ mkdir my-project
$ cd my-project
$ pwd
/home/user/my-project

/home/user の部分は、あなたのユーザー名によって異なります。自分のユーザー名が表示されていればOKです。

課題2:READMEファイルを作成して内容を書き込もう

やること:「README.txt」という空ファイルを作り、プロジェクト名と作成日を書き込んで、内容を表示しよう。

ヒントを見る

touch でファイル作成、echo > で上書き、echo >> で追記、cat で表示です。

解答例を見る
$ touch README.txt
$ echo "プロジェクト名: My First Project" > README.txt
$ echo "作成日: 2026-02-02" >> README.txt
$ cat README.txt
プロジェクト名: My First Project
作成日: 2026-02-02

課題3:サブディレクトリを作成してファイルを整理しよう

やること:「docs/notes」という2階層のディレクトリを一度に作り、その中に「memo1.txt」と「memo2.txt」を作成して、ファイル一覧を表示しよう。

ヒントを見る

mkdir -p で複数階層を一度に作成、touch で複数ファイルを一度に作成できます。

解答例を見る
$ mkdir -p docs/notes
$ touch docs/notes/memo1.txt docs/notes/memo2.txt
$ ls docs/notes
memo1.txt  memo2.txt
リナ:できました!ディレクトリを作って、ファイルを作って、中身を書いて、確認する...という流れがわかってきました!
ライニー先輩:完璧!この流れは実務でも本当によく使うから、体で覚えておくといいよ。

よくあるミスと対処法

ミス1:ディレクトリ名のスペルミス

リナmkdir documets って打っちゃいました...「documents」にしたかったのに。
ライニー先輩:よくあるミスだね。作り直すか、後で mv コマンドで名前を変更できるよ。まずは ls で確認する癖をつけよう。

ミス2:リダイレクトの向きを間違える

リナecho "追加" > memo.txt で追記したかったのに、上書きしちゃいました...
ライニー先輩:これは本当によくあるミス。追記は >>(2つ)、上書きは >(1つ)。迷ったら「2つは追加」と覚えよう。

ミス3:存在しないディレクトリにファイルを作ろうとする

$ touch newdir/file.txt
touch: 'newdir/file.txt' にアクセスできません: そのようなファイルやディレクトリはありません
ライニー先輩touch はディレクトリを自動作成しないよ。先に mkdir newdir でディレクトリを作ってから touch しよう。

ミス4:ファイルとディレクトリを混同する

リナcat でディレクトリの中身を見ようとしたらエラーが出ました。
ライニー先輩cat はファイルの中身を見るコマンド。ディレクトリの中身を見るのは ls だよ。ls -la で「d」から始まるのがディレクトリ、「-」から始まるのがファイルだから確認してみて。

ミス5:日本語ファイル名を使う

リナmkdir メモ って日本語でも作れるんですか?
ライニー先輩:作れることは作れるけど、避けたほうがいいね。文字化けの原因になったり、スクリプトで扱いにくくなったりする。ファイル名は英数字とハイフン、アンダースコアを使うのが無難だよ。

今日の3行まとめ

  • mkdir でディレクトリ作成、-p で複数階層を一度に作れる
  • touch で空ファイル作成、echo "内容" > file で書き込み
  • cat でファイルの中身を表示、追記は >> を使う

次に学ぶこと

リナ:ファイルの作り方がわかりました!次は何を学べばいいですか?
ライニー先輩:次はファイルの「コピー」「移動」「削除」だね。cpmvrm コマンドを覚えれば、ファイル操作の基本は完璧だよ。ファイル操作の基礎編で詳しく解説してるから、ぜひ読んでみて!

実践でファイル操作をマスターしよう

この記事で紹介した4つのコマンドを身につけたら、Penguin Gym Linuxの実践課題で手を動かして定着させましょう。