Linuxコマンドrmdirの使い方と3つのオプション

Linuxでファイルとディレクトリを管理することは非常に重要です。その中でも空のディレクトリを削除するコマンドrmdirはよく使用されます。このポスティングでは、Linuxコマンドrmdirの基本的な使い方からさまざまなオプションと活用方法まで詳しく説明します。

Linuxコマンドrmdirとは?

rmdirコマンドは”remove directory”の略で、空のディレクトリを削除するときに使用するLinuxコマンドです。注意点として、rmdirコマンドは空のディレクトリのみ削除できるということです。ディレクトリ内にファイルや他のディレクトリがある場合、削除は不可能です。

rmdir基本使用法

rmdirコマンドの基本使用法は非常に簡単です。以下の形式に従います:

rmdir [オプション] ディレクトリ名
ShellScript

例えば、空のディレクトリexampleを削除するには次のように入力します:

rmdir example
ShellScript

下の画像はexampleディレクトリを削除する前と削除後の結果を確認したものです

図1. Linuxコマンドrmdirでexampleディレクトリを削除
図1. Linuxコマンドrmdirでexampleディレクトリを削除

rmdirオプション

-vオプション(verbose):削除詳細情報

-vオプションを使用すると、削除したファイルの情報も提供されます。以下のコードはワイルドカード(*)を使用してtestで始まるすべてのディレクトリを削除します。

rmdir -v test*
ShellScript

下の画像はtestで始まるすべてのディレクトリを削除した結果、どのディレクトリが削除されたかを示しています。test.txtはディレクトリではなくファイルなので削除に失敗したことを知らせます

図2. Linuxコマンドrmdir -vで削除するディレクトリの詳細確認
図2. Linuxコマンドrmdir -vで削除するディレクトリの詳細確認

-pオプション(parents):親ディレクトリまで削除

-pオプションは空のディレクトリだけでなく、その親ディレクトリも空の場合は一緒に削除します。このオプションはネストされた空のディレクトリを一度に削除する際に便利です。

rmdir -p example/subdir
ShellScript

このコマンドはsubdirとその上位ディレクトリであるexampleが空の場合、両方を削除します。

下の画像は上記のコマンドを実行した結果です。treeコマンドを使用してディレクトリ構造を確認しました。exampleディレクトリとsubdirディレクトリの下にファイルがないため、すべて削除されたことを確認できます

図3. Linuxコマンドrmdir -pで上位ディレクトリと下位ディレクトリをすべて削除
図3. Linuxコマンドrmdir -pで上位ディレクトリと下位ディレクトリをすべて削除

–ignore-fail-on-non-emptyオプション:空でないディレクトリ無視

–ignore-fail-on-non-emptyオプションは、ディレクトリが空でない場合に発生するエラーメッセージを無視します。このオプションはスクリプトで複数のディレクトリを削除する際に便利です。

rmdir --ignore-fail-on-non-empty example
ShellScript

このコマンドはexampleディレクトリが空でなくてもエラーを無視して続行します。

下の画像は-vオプションを使用しているため、exampleディレクトリを削除すると表示されますが、下位ディレクトリのexampleディレクトリにa.txtファイルがあるため削除されません

図4. Linuxコマンドrmdir --ignore-fail-on-non-empty空でないディレクトリを無視
図4. Linuxコマンドrmdir –ignore-fail-on-non-empty空でないディレクトリを無視

rmdirコマンド使用時の注意事項

空のディレクトリのみ削除可能

rmdirコマンドは空のディレクトリのみ削除できます。ディレクトリ内にファイルや他のディレクトリがある場合、削除は不可能でエラーメッセージが表示されます。

権限問題

ディレクトリを削除する権限がない場合、rmdirコマンドを使用できません。この場合、sudoコマンドを使用して権限を取得できます。

sudo rmdir example
ShellScript

復元不可能

rmdirコマンドを使用して一度削除されたディレクトリは復元できません。もちろんディレクトリ一つを削除した程度なら再びmkdirコマンドを利用してディレクトリを作成すればいいでしょう。しかし、下位ディレクトリ構造が複雑で削除した場合、復元するのはかなり面倒になる可能性があります。したがってrmdirコマンドを使用する際は慎重であるべきです。

rmdirコマンドの活用方法

空のディレクトリ構造整理

rmdirコマンドはプロジェクトディレクトリや作業スペースで使用しない空のディレクトリを整理する際に便利です。定期的に空のディレクトリを削除することでディレクトリ構造をきれいに保つことができます。

スクリプトでの活用

多くのファイルやディレクトリを自動で管理するスクリプトでrmdirコマンドを活用できます。例えば、バックアップ作業後に残った空のディレクトリを整理する際に使用できます。

以下のスクリプトは/backupディレクトリ内のすべての空のディレクトリを見つけて削除します。

#!/bin/bash

# バックアップディレクトリ内のすべての空のディレクトリを削除
find /backup -type d -empty -exec rmdir {} \;
ShellScript

類似コマンドrm

rmコマンドで-rオプションを使用すると、該当ディレクトリおよび下位ディレクトリとファイルをすべて削除します。rmdirコマンドはディレクトリが空でなければ削除できませんが、rmコマンドは空でなくても削除するため特に注意して使用する必要があります。

rmコマンドの詳細な使用方法についてはLinuxコマンドrm使用法および4つのオプションを参考にしてください。

まとめ

rmdirコマンドはLinuxで空のディレクトリを削除する際に必須のツールです。基本的な使い方は簡単ですが、さまざまなオプションを活用することでより効率的にディレクトリを管理できます。空のディレクトリを整理したいときにrmdirコマンドを使用してみてください。

Linuxコマンドをうまく活用するとシステム管理がずっと楽になります。追加の質問やもっと知りたい内容があればいつでもお知らせください!

この文章が皆さんのLinux活用に役立つことを願っています!

リファレンス

関連ポスト

コメントする