如何在 Linux 中删除目录

在 Linux 中有两种删除目录的方法:rmrmdir 命令。

这两个命令的区别是 rm 可以删除文件、目录以及包含文件和子目录等内容的目录,而 rmdir 仅能删除空目录。

此外,这两个命令都会永久删除目录(而不是将它们移动到垃圾箱),因此在使用它们时要小心。

下面让我们更详细地看一下这两个命令。

如何使用 Linux rm命令

您可以使用该rm命令删除 Linux 中的文件和目录。对于目录,此命令可用于完全删除目录——即删除一个目录以及该目录中的所有文件和子目录。

rm命令的语法:

rm [options] [files and/or directories]

要删除文件,例如test.txt,您可以使用不带选项的命令,如下所示:

rm test.txt

要删除目录,则必须提供一些标志选项。

如何删除包含内容的文件夹

对于包含内容的目录,您必须提供-r标志。如果直接运行下面的命令:

rm test

系统会提示:rm:test:is a directory 错误

-r参数表示rm命令会递归删除目录的内容(无论是文件还是子目录)。因此,您可以像这样删除目录(整个目录及其中的内容都会被删除):

rm -r test

如何删除一个空文件夹

对于空文件夹,您仍然可以提供-r参数,但专用的-d参数更适用于这种情况。

要删除空目录,可以使用以下命令:

rm -d test

建议在删除空目录时使用 -d 参数而不是-r参数,因为-d参数可以删除的确保目录为空。如果它不为空,系统会报错:rm: test: Directory not empty。因此,为确保您正在执行正确的空目录操作,请使用-d参数。

如何使用 Linux rmdir命令

rmdir命令专门用于删除空目录。语法是:

rmdir [folders]

它相当于:

rm -d [folders]

rmdir在非空目录上使用时,会提示错误: rmdir: [folder]: Directory not empty

要删除空目录,请使用不带选项的命令:

rmdir test

rmdir命令还有一个-p参数,它允许您删除一个目录及其父目录。例如,如果您有以下文件结构:

> Test
---> Test22

在这种情况下,Test是具有Test2子目录的目录。如果删除Test2目录,Test将变为空目录。所以不要这样做:

rmdir Test/Test2 Test
# deleting Test2 and then Test

您可使用-p标志:

rmdir -p Test/Test2

上述命令将删除Test2,然后删除树中的父级Test 。但如果任一目录不为空,将引发错误而中止删除操作。