Was ist der Sinn des rmdir von UNIX?

Was ist der Sinn des rmdir von UNIX?

Ich bin neu bei UNIX (MAC OS X Bourne Shell POSIX). Ich verstehe, rmdirdass nur ein leeres Verzeichnis entfernt wird, aber unter welchen Umständen möchten Sie es tatsächlich verwenden rmdir <directory name>und nicht nur rm -r <directory name>? Gibt es einen intelligenten Anwendungsfall, den ich nicht verstehe und dessen Kenntnis meine Programmierung ein wenig verbessern würde? Danke.

Antwort1

rmdirist sicherer: Es weigert sich, ein Verzeichnis zu entfernen, wenn es Dateien enthält. Was ist, wenn Sie versuchen, das falsche Verzeichnis zu entfernen, oder das Verzeichnis noch (möglicherweise versteckte) Dateien enthält, die Sie benötigen?

es gibt auchhistorische Gründe: Am Anfang rmhatte das Programm keinen -rSchalter, daher rmdirwar es notwendig, Verzeichnisse zu entfernen. Damals rmdirwar es ein nicht triviales Programm, heute ist es jedoch nur ein Wrapper für die rmdir(const char*)C-Funktion.

Antwort2

Ich verwende rmdir, wenn ich ein Verzeichnis entferne, das icherwartenleer sein, damit es fehlschlägt, wenn noch Dateien darin sind. rm -rfWenn ich etwas falsch eingebe, werden möglicherweise Dateien gelöscht, die ich behalten möchte.

verwandte Informationen