pwd・ls・cd で、ターミナルの中を歩き回れるようになりました。次は、自分でフォルダやファイルを作る番です。
Windows なら、右クリックして「新規作成」を選びますよね。Linux のターミナルでは、それをコマンド1行で行います。最初は少し不思議な感じがしますが、慣れると「右クリックより速いかも」と思えてきます。私も、自動化の作業用フォルダを作るときは、今ではほぼコマンドです。
-
mkdirでフォルダ(ディレクトリ)を作る方法 -
mkdir -pで、深い階層もまとめて作る方法 -
touchで空のファイルを作る方法 -
echoと>・>>で、ファイルに文字を書く方法 - 「上書きしてしまった!」を防ぐための注意点
- ターミナルを開いて、Linux(WSL の Ubuntu・Debian など)のコマンドが打てる
-
pwd・ls・cdと、パスの書き方(~や..)がわかる
まだの方は、前の記事「Linuxのパス入門|絶対パス・相対パス・~(チルダ)と ..(ドットドット)をやさしく解説」から読むのがおすすめです。
- ターミナル:文字を打ってパソコンに指示を出すための画面(アプリ)。いわゆる「黒い画面」です。打った文字を読み取って動かすのは、この中で動いている「シェル」です
- コマンド:パソコンへの指示の言葉。ターミナルに打って Enter で実行します
- パス:ファイルやディレクトリの場所を表す「住所」の書き方(/home/kaito など)
用語で迷ったら、連載のまとめ記事の「よく出てくる用語ミニ辞典」でも確かめられます。
結論:作るコマンドは3つだけ
| やりたいこと | コマンド | 例 |
|---|---|---|
| フォルダを作る | mkdir | mkdir notes |
| 深いフォルダをまとめて作る | mkdir -p | mkdir -p work/2026/07 |
| 空のファイルを作る | touch | touch todo.txt |
| ファイルに1行書く(上書き) | echo ... > | echo "こんにちは" > hello.txt |
| ファイルの最後に1行足す | echo ... >> | echo "2行目" >> hello.txt |
Linux では、フォルダのことをディレクトリと呼びます。この記事でも、ここからは「ディレクトリ」と書いていきますね。
準備:練習用のディレクトリに移動する
この連載では、練習はすべて ~/linux-practice の中で行います。前の記事で作った方は、そのまま移動しましょう。まだない方も、次の2行で大丈夫です(-p の意味は、このあとすぐ説明します)。
- 1
- 2
- 3
mkdir -p ~/linux-practice
cd ~/linux-practice
pwdここから先の出力例は、Debian 13での実行例です(ユーザー名 kaito・パソコン名 demo のダミー環境)。UbuntuやWSLでは、表示が少し違うことがあります。
(例)
- 1
/home/kaito/linux-practice/home/kaito/linux-practice のように、最後が linux-practice になっていればOKです(kaito の部分は、あなたのユーザー名になります)。
mkdir:ディレクトリを作る
mkdir(エムケーディア)は、make directory(ディレクトリを作る)の略です。
- 1
- 2
mkdir notes
ls(例)
- 1
memo notesnotes が表示されれば成功です。memo は、前の記事(パスの記事)の練習で作ったディレクトリです。前の記事を試していない方は、notes だけが表示されます。何も表示されずに次の行に戻るのは、うまくいったという意味です。Linux のコマンドの多くは、成功したときは黙っています。
一度に複数作る
スペースで区切ると、まとめて作れます。
- 1
- 2
mkdir drafts images
ls(例)
- 1
drafts images memo notes同じ名前で作ろうとすると?
すでにある名前でもう一度作ろうとすると、エラーになります。
- 1
mkdir notes(例)
- 1
mkdir: cannot create directory ‘notes’: File exists「File exists(もうあります)」という意味のメッセージです。壊れたわけではないので、安心してください。
なお、mkdir のメッセージでは、名前が ‘notes’ のような向きのある引用符(‘ ’)で囲まれます。このあと出てくる cp や rm などでは 'notes' のようなまっすぐな記号(' ')なので、見た目が少し違いますが、意味は同じです。
mkdir -p:深いディレクトリをまとめて作る
たとえば、work/2026/07 のように3段のディレクトリを作りたいとします。-p なしで打つと、途中の work がまだないのでエラーになります。
- 1
mkdir work/2026/07(例)
- 1
mkdir: cannot create directory ‘work/2026/07’: No such file or directory「No such file or directory(そのようなファイルやディレクトリはありません)」は、途中の work が見つからない、という意味です。そこで -p を付けます。-p は、途中のディレクトリがなければ一緒に作り、すでにあってもエラーにしないオプションです。
- 1
- 2
- 3
mkdir -p work/2026/07
ls work
ls work/2026(例)
- 1
- 2
- 3
- 4
kaito@demo:~/linux-practice$ ls work
2026
kaito@demo:~/linux-practice$ ls work/2026
07mkdir -p は、すでにあるディレクトリを指定してもエラーになりません。手順書やスクリプト(=やりたい処理を順番に書いておき、まとめて実行できるファイル)で mkdir -p がよく使われているのは、「何回実行しても同じ結果になる」からです。
touch:空のファイルを作る
touch(タッチ)は、中身が空っぽのファイルを作るコマンドです。
- 1
- 2
- 3
cd ~/linux-practice/notes
touch todo.txt
ls -l(例)
- 1
- 2
total 0
-rw-rw-r-- 1 kaito kaito 0 Nov 1 04:56 todo.txtls -l で見ると、ファイルの大きさ(サイズ)が 0 になっています。中身がまだ何もない、という意味です。
-rw-rw-r-- は、ファイルの権限(だれが読み書きできるか)を表す部分です。今回の Debian 13 では、新しく作ったファイルが -rw-rw-r--、ディレクトリが drwxrwxr-x になりました。これは「umask(ユーマスク)」という初期設定で決まるので、環境によっては -rw-r--r-- のように表示されることもあります。表示は環境によって少し違いますが、この記事の操作には影響しません。権限の読み方は、この連載の Lv2 で扱います。
すでにあるファイルに touch すると?
すでにあるファイルに touch しても、中身は消えません。変わるのは「最後に更新した日時」だけです。名前のとおり、ファイルに「ちょっと触る」イメージです。
- 1
- 2
touch todo.txt
ls -l(例)
- 1
- 2
total 0
-rw-rw-r-- 1 kaito kaito 0 Nov 1 04:57 todo.txt今回は約1分あけてもう一度 touch したので、時刻が 04:56 から 04:57 に変わりました。サイズは 0 のままです。
🤖 詰まったらAIに聞こう:ディレクトリやファイルが作れない
- 1
- 2
- 3
- 4
- 5
- 6
- 7
Linuxの初心者です。ディレクトリ(またはファイル)を作ろうとしたら、エラーが出ました。
原因と、直し方を初心者向けに教えてください。
【使っている環境】WSLのUbuntu など
【今いる場所(pwd の結果)】ここに貼る
【実行したコマンド】ここに貼る
【表示されたメッセージ】ここに貼るecho:ファイルに文字を書く
echo(エコー)は、うしろに書いた文字を、そのまま表示するコマンドです。まずは画面に出してみましょう。
- 1
echo "はじめてのメモ"(例)
- 1
はじめてのメモ> で、ファイルに書き込む(上書き)
>(大なり)を付けると、画面に出すかわりに、ファイルに書き込みます。ファイルがなければ新しく作られます。
- 1
- 2
echo "はじめてのメモ" > memo.txt
cat memo.txt(例)
- 1
はじめてのメモcat(キャット)は、ファイルの中身を表示するコマンドです。くわしくは、この連載の「ファイルの中身を見る」の記事で扱います。
>> で、最後に1行足す(追記)
>>(大なり2つ)は、今の中身はそのままに、最後に足す書き方です。
- 1
- 2
echo "2行目を足しました" >> memo.txt
cat memo.txt(例)
- 1
- 2
はじめてのメモ
2行目を足しました> は、すでに中身があるファイルでも、何も聞かずに中身を入れ替えます。上書きされた前の中身はゴミ箱にも残らないので、元に戻せません。足したいだけのときは >>、と覚えておきましょう。試すときは、この記事の練習用ファイルだけにしてください。
実際に、上書きされる様子を見ておきましょう。
- 1
- 2
echo "上書きしました" > memo.txt
cat memo.txt(例)
- 1
上書きしましたよくあるつまずき
名前にスペースを入れたら、2つできた
- 1
- 2
- 3
cd ~/linux-practice
mkdir my folder
ls(例)
- 1
drafts folder images memo my notes workLinux では、スペースは「区切り」の意味になります。my と folder の2つを作れ、と受け取られてしまうんですね。名前にスペースは使わず、my-folder や my_folder のように、ハイフンやアンダースコアでつなぐのがおすすめです。
できてしまった2つのディレクトリは、中が空なので次のコマンドで消せます(消すコマンドは、この連載の「rmの安全な使い方」の記事でくわしく扱います)。
- 1
- 2
rmdir my folder
ls(例)
- 1
drafts images memo notes work「Permission denied」と出る
自分のホームディレクトリ(~)の外、たとえば / の直下などで作ろうとすると、「許可がありません」という意味のエラーになります。
(例)
- 1
- 2
kaito@demo:~/linux-practice$ mkdir /linux-test-denied
mkdir: cannot create directory ‘/linux-test-denied’: Permission denied練習は ~/linux-practice の中で行えば、このエラーは出ません。pwd で、今いる場所を確かめてみてください。
メッセージが日本語で出る環境では
日本語の設定(ロケール)になっている環境では、エラーの後ろ半分だけが日本語で表示されます。今回の Debian 13 で日本語の設定にして、同じ3つのエラーを出すと次のようになりました。すでに同じフォルダーがある環境で再現するため、別の練習フォルダー(~/linux-practice/ja-test)で実行しています。
(例)
- 1
- 2
- 3
mkdir: cannot create directory ‘notes’: ファイルが存在します
mkdir: cannot create directory ‘work/2026/07’: そのようなファイルやディレクトリはありません
mkdir: cannot create directory ‘/linux-test-denied’: 許可がありません前半の cannot create directory は英語のままで、英語と日本語が混ざった表示になります。英語で表示されても日本語で表示されても、意味は同じです。
🤖 詰まったらAIに聞こう:echo で書いたはずの中身がおかしい
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Linuxの初心者です。echo でファイルに文字を書いたのですが、思った中身になっていません。
何が起きたのか、どう書けばよかったのかを教えてください。
【使っている環境】WSLのUbuntu など
【今いる場所(pwd の結果)】ここに貼る
【実行したコマンド(順番どおり)】ここに貼る
【cat で表示した中身】ここに貼る
【本当はこうしたかった】例:前の行を残したまま、1行足したかったファイルの中身を貼るときは、パスワード、APIキー、トークン、メールアドレスなどが入っていないか確認しましょう。APIキーやトークンは、Web のサービスを使うときに本人の代わりになる、合言葉のような文字列です。入っている場合は「***」に置き換えてから貼ってください。
よくある質問
Q. touch と echo "" > ファイル は、どちらで空のファイルを作ればいいですか?
空のファイルを作るだけなら touch がおすすめです。すでに同じ名前のファイルがあっても中身が消えないからです。> は、中身があるファイルでも確認なしで上書きします。
Q. ディレクトリ名に日本語を使ってもいいですか?
使えますが、おすすめしません。打つのに手間がかかり、環境によっては表示が崩れることもあります。練習では、半角英数字と - や _ でつなぐ名前にしておきましょう。
まとめ
- ディレクトリを作るのは
mkdir。深い階層をまとめて作るならmkdir -p - 空のファイルを作るのは
touch。すでにあるファイルに使っても中身は消えない -
echo "文字" > ファイルで上書き、>>で最後に追記 -
>は確認なしで上書きするので、足したいときは>> - 名前にスペースは使わず、
-や_でつなぐ
これで、練習用のディレクトリにファイルを作れるようになりました。次は、作ったファイルをコピーしたり、移動したり、名前を変えたりしてみましょう。
次に読む記事
- 前の記事:Linuxのパス入門|絶対パス・相対パス・~(チルダ)と ..(ドットドット)をやさしく解説
- 次の記事:Linuxのコピー・移動・名前変更|cp・mvの基本と上書きを防ぐ -i【初心者向け】
関連する記事
- Python入門|環境構築と最初の1本を動かす:作ったディレクトリに、Python のファイルを置いて動かしてみたい方に
- Git入門|init・add・commit を1回やってみる:作ったファイルの変更履歴を残す方法を知りたい方に
- Cursorにエラーを直してもらう5ステップ|エラーの渡し方・頼み方・直った後の確認まで:エラーメッセージを AI に上手に渡すコツを知りたい方に