このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
【Linux】ディレクトリの削除:rmdirコマンド
rmdirコマンドの概要
「rmdir」コマンドは、LinuxやUnixシステム上でディレクトリ(フォルダ)を削除するためのコマンドです。「rmdir」は「remove directory」の略で、指定されたディレクトリを削除します。しかし、このコマンドは空のディレクトリのみを削除することができます。もしディレクトリ内にファイルや他のディレクトリがある場合、"rmdir"はエラーを出力します。
主なオプションと説明
オプション | 説明 |
---|---|
-p | 指定したディレクトリだけでなく、親ディレクトリも削除します。指定したディレクトリが空である限り、親ディレクトリも再帰的に削除されます。 |
コマンドの使用例と解説
1.基本的な使用例
まず、「dir」ディレクトリを作成しておきます。
・「mkdir dir」コマンドを実行します。
user01@ubuntu-vm:~$ mkdir dir
・「rmdir dir」コマンドを実行します。「ls」コマンドでディレクトリが削除されたかを確認します。
このコマンドは、「dir」という名前の空のディレクトリを削除します。もしディレクトリが空でない場合、エラーが出力されます。
user01@ubuntu-vm:~$ rmdir dir
user01@ubuntu-vm:~$ ls
snap テンプレート ドキュメント ピクチャ 公開
ダウンロード デスクトップ ビデオ ミュージック
2.親ディレクトリも削除する場合
・「mkdir -p dir1/dir2/dir3」コマンドを実行します。
このコマンドは、指定したパス内に存在しないディレクトリを自動的に作成します。例えば、「dir1/dir2/dir3
」が存在しなくても、それを含む全てのディレクトリを作成します。
user01@ubuntu-vm:~$ mkdir -p dir1/dir2/dir3
・「rmdir -p dir1/dir2/dir3」コマンドを実行します。
「-p」オプションを使用することで、親ディレクトリも再帰的に削除されます。
user01@ubuntu-vm:~$ rmdir -p dir1/dir2/dir3
3.指定したディレクトリが空でない場合
・「mkdir -p dir1/dir2/dir3」コマンドを実行します。
user01@ubuntu-vm:~$ mkdir -p dir1/dir2/dir3
「dir2」ディレクトリの中に「file.txt」ファイルを作成しておきます。
・「touch dir1/dir2/file.txt」コマンドを実行します。
user01@ubuntu-vm:~$ touch dir1/dir2/file.txt
・「rmdir -p dir1/dir2/dir3」コマンドを実行します。
「-p」オプションを使用して、親ディレクトリも含めて再帰的に削除を試みます。しかし、削除に失敗します。指定したディレクトリの中が空でないため、「dir3」は削除されますが、親ディレクトリ「dir1/dir2」を削除することができません。
user01@ubuntu-vm:~$ rmdir -p dir1/dir2/dir3
rmdir: ディレクトリ 'dir1/dir2' の削除に失敗しました: ディレクトリは空ではありません
そこで、rmコマンドに「-r」オプションを指定して削除します。
・「rm -r dir1」コマンドを実行します。
rmコマンドに「-r」オプションを使用することで、空でないディレクトリを削除することができます。
user01@ubuntu-vm:~$ rm -r dir1
「rmdir」コマンドは、ファイルシステム内のディレクトリを削除するための基本的なコマンドです。コマンドの使い方をマスターしておきましょう。