UNIX 的 rmdir 有什么用处?

UNIX 的 rmdir 有什么用处?

我是 UNIX(MAC OS X bourne shell POSIX)的新手,我知道rmdir只会删除一个空目录,但在什么情况下您实际上想要使用rmdir <directory name>而不是仅仅使用rm -r <directory name>?是否有一个我未能理解的智能用例,如果我了解了它,我的编程会更好一点?谢谢。

答案1

rmdir更安全:如果目录包含任何文件,它会拒绝删除该目录。如果您尝试删除错误的目录,或者该目录仍包含您需要的(可能是隐藏的)文件,该怎么办?

还有历史原因:最初,该rm程序没有-r开关,因此rmdir需要删除目录。当时这rmdir是一个不平凡的程序,但今天它只是rmdir(const char*)C 函数的一个包装器。

答案2

rmdir我在删除目录时使用预计为空,这样如果其中仍有文件,它就会失败。rm -rf如果我输入错误,使用可能会弄丢我想要保留的文件。

相关内容