Linuxコマンドを覚えよう① ファイルの作成・削除編


Linuxコマンドを覚えよう① ファイルの作成・削除編

プログラミング学習を始めた方の中には、コマンドプロンプトやターミナルを使ったLinuxのコマンド操作に苦手意識をお持ちの方もいるのではないでしょうか。

そこで今回はLinuxコマンドでディレクトリやファイルを作成・削除する方法について解説していきます。Linuxコマンドを自由に扱えるようになると作業効率が上がるので、ぜひこの機会に手を動かして覚えてみましょう。

目次
  1. ディレクトリを作成する mkdirコマンド
  2. ファイルを作成する touchコマンド
  3. ディレクトリ・ファイルを削除するrmコマンド
  4. 練習問題
  5. まとめ

ディレクトリを作成する mkdirコマンド

『ディレクトリ』とは、ファイルを整理するためのものを指します。ここではフォルダのようなものだという理解で問題ありません。

まずはターミナルを開き、下記コマンドを実行してください。「cd」コマンドはディレクトリの移動に使用するコマンドであり、単にcdを実行すると『ホームディレクトリ』まで一気に戻れます。

$cd

なおコマンド実行時に「$」は入力する必要がない点に注意してください。

ホームディレクトリに移動できたら、下記コマンドで「sample」というディレクトリを作成してください。ここで登場した「mkdir」コマンドは、ディレクトリを作成するLinuxのコマンドです。

$mkdir sample

ちなみにmkdirは英語の「make directory」の略で、ディレクトリを作成するという訳になります。

本当にディレクトリを作成できたか確認する必要がありそうです。あるディレクトリ配下にどのようなディレクトリ・フォルダが存在するか確認できる「ls」コマンドがあるので、早速使ってみましょう。

$ls 

コマンドを実行すると、たくさんディレクトリが表示されるかと思いますが、sampleという名前のディレクトリがあればOKです。

次に作成したsampleディレクトリに移動して、その中に新しいディレクトリ「dir1」を作成してみましょう。

$cd sample
$mkdir dir1
$ls
//実行結果
dir1

これでディレクトリの中に別のディレクトリを作成することができました。また複数のディレクトリを一気に作成できます。

sampleディレクトリにいることを確認して、下記コマンドを実行してください。先程作成したdir1に加えて、dir2とdir3が作成されたのが分かります。

$mkdir dir2 dir3
$ls
//実行結果
dir1    dir2    dir3

今回はまずsampleディレクトリを作成し、その後dir1ディレクトリを作成しましたが、少しめんどくさいですね。Linuxでは、mkdirで一気に深い階層のディレクトリを作成できます。

まずは下記コマンドを実行して、結果を確認してみましょう。

$cd
$mkdir sample2/dir4 
//実行結果
mkdir: sample2: No such file or directory

実行するとエラーが出てしまいましたね。途中のディレクトリ(今回はsample2)が存在しない状態で、その配下にディレクトリを作成しようとするとエラーが出てしまいます。

もう一度、下記コマンドを実行してみましょう。

$mkdir -p sample2/dir4
$ls sample2
//実行結果
dir4

sample2ディレクトリの配下に、dir4ディレクトリが作成されました。深い階層のディレクトリを作成する場合は、mkdirに-pオプションをつけることを忘れないようにしましょう。

ファイルを作成する touchコマンド

次にファイルを作成する「touch」コマンドについて解説していきます。まずは下記コマンドを実行して結果を確認してみましょう。

$cd
$cd sample
$touch file1.txt
$ls
//実行結果
dir1        dir2        dir3        file1.txt

先程作成したディレクトリに加え、file1.txtが作成されました。Linuxの「touch」は新規ファイルを作成するコマンドです。

ちなみに.txtはファイルの拡張子を指し、ファイルの種類がテキストファイルという意味です。csvファイルなら.csvで、Rubyファイルなら.rbとなります。

今度はsampleディレクトリ配下にfile2.txtを作成してみましょう。

$touch file2.txt
$ls
//実行結果
dir1        dir2        dir3        file1.txt   file2.txt

ファイルを1つずつ作成するのは少々めんどくさいですね。Linuxでは複数のファイルを同時に作成できます。

$touch file3.txt file4.txt
$ls
//実行結果
dir1        dir3        file2.txt                 file4.txt
dir2        file1.txt               file3.txt

次にdir1の中にfile5.txtとfile6.txtを作成してみましょう。cdコマンドでsampleからdir1に移動してから、touxhコマンドで新規ファイルを作成する必要はありません。

下記コマンドを実行して結果を確認してみましょう。

$touch dir1/file5.txt dir1/file6.txt
$ls 
//実行結果
file5.txt       file6.txt

ディレクトリ・ファイルを削除するrmコマンド

ここまででディレクトリとファイルを自由に作成できるようになりました。次は不要なディレクトリやファイルを削除する方法について解説していきます。

sampleディレクトリにいることを確認して、下記コマンドを実行してみましょう。

$ls
//実行結果
dir1        dir3        file2.txt       file4.txt
dir2        file1.txt       file3.txt

$rm file1.txt
$ls
//実行結果
dir1        dir3        file3.txt
dir2        file2.txt       file4.txt

file1.txtが削除されたことが分かります。Linuxの「rm」コマンドでファイルやディレクトリを削除できます。

複数のファイルを同時に削除することも可能です。

$rm file2.txt file3.txt
$ls
//実行結果
dir1        dir2        dir3        file4.txt

次にdir1ディレクトリを削除してみましょう。下記コマンドを実行してください。

$rm dir1
//実行結果
rm: dir1: is a directory

ディレクトリを削除する場合、rmコマンドだけではエラーが出てしまいます。そこで-rオプションをつけて、コマンドを実行してみましょう。

$rm -r dir1
//実行結果
dir2        dir3        file4.txt

オプションによりdir1を削除できました。ディレクトリを削除する場合、その中身のファイルも同時に削除されてしまう点です。

実際の現場で必要なファイルを作成してしまうと大変です。そのため、削除する前に内容を確認するオプションがLinuxには用意されています。

$rm -i file4.txt
//実行結果
remove file4.txt?
yを入力し、Enterを押すと実行。

普段の学習でも、本当に削除しても問題ないファイルなのか慎重になっておくと良いかもしれません。

空のディレクトリをrmコマンドで削除する場合は注意が必要です。まずは下記コマンドを実行して結果を確認してみましょう。

$mkdir blankdir
$ls
//実行結果
blankdir    dir3
$rm 
//実行結果
rm: blankdir/: is a directory

エラーが出てしまいました。空のディレクトリを削除する場合は、「rmdir」コマンドを使用します。

$rmdir blankdir
$ls
//実行結果
dir3

今度はしっかりと空のディレクトリを削除できました。

練習問題

ここまで学んだ知識を使い、下記のようなディレクトリ構造を作成してみましょう。

①ホームディレクトリ配下にpracticeディレクトリを作成してください。
②practiceディレクトリ配下に、sample1.txt、sample2.rb、sample3.htmlを作成してください。
③practiceディレクトリ配下に、dirディレクトリを作成してください。
④dirディレクトリ配下にsample3.txtを作成してください。

Webサイト担当者としてのスキルが身に付く

CodeCampの無料体験はこちら

まとめ

ここまでLinuxのmkdir/touch/rm/rmdirについて解説してきました。初めのうちはLinuxコマンドに関して難しく感じるかと思いますが、何度も使用することで徐々に慣れてくるかと思います。

ぜひ皆さんもご自身でファイルの削除や作成を試してみてくださいね。


関連記事

ヤマモト
この記事を書いた人
ヤマモト
\ 無料体験開催中!/自分のペースで確実に習得!
オンライン・プログラミングレッスンNo.1のCodeCamp