ディレクトリの作成と削除

ここではディレクトリを作成したり、削除するコマンドについて説明します。 中には、まとめてファイルやディレクトリを削除するコマンドもあるので、コマンド実行時にはくれぐれも注意してください

一般論として、大事なファイルは常に物理的・地理的に複数箇所に保存しましょう。

ディレクトリの作成

ディレクトリを作成するには、mkdir コマンドを使います。

foo という名前のディレクトリを作成するには、次のようにします。

$ mkdir foo
$ ls
foo

ls コマンドでディレクトリの中身を表示しています。

既に同名のディレクトリが存在する場合は、エラーが発生します。

$ mkdir foo
mkdir: cannot create directory ‘foo’: File exists

同名のディレクトリがあってもエラーとしない場合には、-p オプションを指定します。

$ tree
.
└── foo

1 directory, 0 files
$ mkdir -p foo
$

一度に複数の階層構造となるディレクトリを作成することも可能です。 この時必要に応じてディレクトリを作成するには、上と同じく -p オプションを指定します。

$ mkdir -p foo/bar/baz
$ tree
.
└── foo
    └── bar
        └── baz

3 directories, 0 files

ディレクトリの削除

ディレクトリを削除するには rmdir コマンドを使います。

次のコマンドでは foo という名前のディレクトリを削除します。

$ rmdir foo

ただし、ディレクトリが空ではない場合には削除できません

$ mkdir -p foo/bar/baz
$ tree
.
└── foo
    └── bar
        └── baz

3 directories, 0 files
$ rmdir foo # foo の削除を試みる
rmdir: failed to remove 'foo': Directory not empty

ここではディレクトリ foo の中には、ディレクトリ bar があるので削除できませんでした。

空ではないディレクトリであっても構わずに削除するには、rm コマンドを使い、-r オプションを指定します。

$ tree
.
└── foo
    └── bar
        └── baz

3 directories, 0 files
$ rm -r foo  # foo の削除を試みる
$ tree
.

0 directories, 0 files  # 確かに削除された

中身が空の場合に限り、親ディレクトリも削除する場合は、次のように rmdir コマンドに -p オプションを指定できます。

$ tree
.
└── foo
    └── bar
        └── baz

3 directories, 0 files
$ rmdir -p foo/bar/baz
$ tree
.

0 directories, 0 files

この場合、ディレクトリ foobarbaz は階層構造になっていますが、 末端のディレクトリから削除していき、親が空のディレクトリになったときに限り親も削除します。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Linux 入門