rmdirが再帰的に機能しないのはなぜですか?

rmdirが再帰的に機能しないのはなぜですか?

rmdir空のディレクトリのみを削除してください。rm -rf再帰削除を使用します。

  • rmdirなぜ再帰オプションはありませんか?論理的に削除すると目次、を使用したいrmdir
  • rm最も単純な場合を除くすべての場合にディレクトリを削除するために使用されることを考慮すると、この機能がrmdir存在するのはなぜですか?この機能はに含まれていますrm

これはただ歴史の偶然でしょうか?

ベストアンサー1

ディレクトリの切断は元の権限を持つタスクです。:

ディレクトリの接続を解除することも違法です(スーパーユーザーを除く)。

だからrmdir実装しました。ディレクトリを削除する小さなバイナリで、その時点で、ディレクトリ内の..合計を削除して.からディレクトリ自体を削除することが含まれていました。rmdirsetuid rootとして設計されており、以下を使用して個別の権限テストを実行します。access実際のユーザーがディレクトリを削除できるかどうかを決定します。他のsetuidルートバイナリと同様に、シンプルで集中的に保つのが最善です。

rm -r実際にこの別のバイナリを使用してください必要に応じてディレクトリを削除します。

rm -rとの間の継続的な違いは、rmdirこれらの初期の違いの結果であるようです。

おそらくrm、再帰削除機能は非常に初期に取得され、小さな所管を持つ必要があったrmdirので、rmdir再帰削除機能を提供すること自体は決して役に立たなかった。

おすすめ記事