rmdir 是您将在开始时学习但很少使用的基本 Linux 命令之一。
为什么? 因为听起来好像 rmdir 用于删除目录(即文件夹),事实上,默认情况下,它只删除空目录。
使困惑? 不要这样。 让我们详细看看。
在 Linux 中使用 rmdir 命令
rmdir 有一个简单的语法:
rmdir [option] directory
让我们看看它的用法。
删除一个空目录
空目录中不包含任何文件或目录。 如果您有一个空目录,则可以轻松将其删除。 不需要其他选项。
rmdir directory_name
删除非空目录
如果您尝试删除包含文件和目录的目录,该命令将失败并显示一条错误消息,指示“目录不是空的”。
您可以使用 rmdir 强制删除目录及其所有内容,如下所示:
rmdir --ignore-fail-on-non-empty directory_name
虽然它有效,但您永远不会看到有人使用这种方法。 在 Linux 中删除非空目录的更常见(或流行)方法是使用 rm 命令。
rm -r directory_name
删除目录和父目录
如果你有一个嵌套的目录结构,你可以指定选项 -p 来删除完整的结构。
所以如果你有目录结构a/b/c,你可以使用:
rmdir -p a/b/c
它类似于 rmdir a/b/ca/ba.
请注意,目录也需要为空。 或者,您可以使用 --ignore-fail-on-non-empty
旗帜。
详细模式
您还可以使用详细模式。 您可能已经注意到 rmdir 命令不显示任何成功命令的结果。
如果你想看到,你可以使用详细选项 -v
:
rmdir -v directory

这就是 rmdir 命令的全部内容。 由于大多数情况下您将是非空文件夹,因此 rmdir 将无法删除它们。 这 --ignore-fail-on-non-empty
不是很多人记得的,这就是为什么 rm -r
命令更受欢迎。