有几种不同的方式可以删掉Linux中的目录。假若您使用桌面文件管理器(如Gnome的文件管理器或KDE的Dolphin),则可以使用管理器的图形用户界面删掉文件和目录。并且,假如您正在使用无头服务器或想要一次删掉多个目录,最好的选择是从行删掉目录(文件夹)。

在这篇文章中,我们将介绍怎样使用rmdir,rm和find删掉Linux中的目录。

在你开始之前

使用桌面文件管理器删掉目录时,该目录实际上已移至“废茅房”,而且可以轻松恢复。

从行删掉文件或目录时要分外留神,由于一旦使用本文中介绍的命令删掉目录,就难以完全恢复。

在大多数Linux文件系统上,删掉目录须要对目录及其内容具有写权限。否则您将收到“不容许操作”错误。

必须使用反斜杠(/)通配符其中包含空格的目录名称。

删掉目录rmdir

rmdir是一个用于删掉空目录的命令行实用程序。只有当目录为空时才须要删掉目录,而不须要检测目录是否为空。

要删掉目录rmdir,请键入命令,之后键入要删掉的目录的名称。比如,要删掉名为linuxmi的目录,请键入:

linuxidc@linuxidc:~$rmdirlinuxmi

假如目录不为空linux 删除目录linux apache 虚拟主机,您将收到以下错误:

rmdir:删掉'linuxmi'失败:目录非空

在这些情况下,您须要使用该rm命令或自动删掉目录内容,之后才会删掉它。

删掉目录rm

rm是一个用于删掉文件和目录的命令行实用程序。与命令不同rmdir,rm可以删掉空目录和非空目录。

默认情况下linux软件下载,在没有任何选项的情况下使用时rm不会删掉目录要删掉空目录,请使用-d(--dir)选项。假如要删掉非空目录和其中的所有内容,请使用-r(--recursive或-R)选项。

比如,要删掉一个名为linuxmi及其所有内容的目录,您可以键入:

rm-rlinuxmi

目录删除自动编号_目录删除内容控件是什么意思_linux 删除目录

假如目录中的目录或文件遭到写保护,系统将提示您确认删掉。要在不提示的情况下删掉目录,请使用以下-f选项:

rm-rdirname

要一次删掉多个目录,请使用rm命令,后跟由空格分隔的目录名称。下边的命令将删掉每位列举的目录及其内容:

rm-rlinuxmilinuxmilinuxidc

该-i选项告诉rm提示您确认删掉每位子目录和文件。假如目录包含大量文件linux 删除目录,这可能有点可恶,因而您可以考虑使用-I在继续删掉之前只提示您一次的选项。

rm-rIlinuxidc

确定要删掉目录请输入y并点击Enter。

rm:remove1argumentrecursively?y

您还可以使用常规扩充来匹配和删掉多个目录。比如,要删掉当前目录中以所有_bak结尾的所有第一级目录或则文件,您将使用以下命令:

linux 删除目录_目录删除自动编号_目录删除内容控件是什么意思

rm-r*_bak

删掉目录时使用常规扩充可能存在风险。建议首先使用该ls命令列举目录,便于在运行rm命令之前查看将删掉的目录。

删掉目录find

find是一个命令行实用程序,容许您按照给定的表达式搜索文件和目录,并对每位匹配的文件或目录执行操作。

最常见的情况是使用find命令按照模式删掉目录。比如,要删掉当前工作目录中所有以_cache结尾的目录,请运行:

find.-typed-name'*_cache'-execrm-r{}+

让我们剖析一下里面的命令:

•.-递归搜索当前工作目录(.)。

•-typed-将搜索限制为目录。

目录删除自动编号_linux 删除目录_目录删除内容控件是什么意思

•-name'*_cache'-仅搜索以_cache结尾的目录

•-exec-执行带有可选参数的外部命令,在这些情况下是rm-r。

•{}+-将找到的文件追加到rm命令的末尾。

删掉所有空目录

要删掉目录树中的所有空目录,您将使用:

find/dir-typed-empty-delete

以下是对所用选项的解释:

•/dir-递归搜索/dir目录。

•-typed-将搜索限制为目录。

•-empty-将搜索限制为仅空目录。

•-delete-删掉子树中所有找到的空目录。-delete只能删掉空目录。

请慎重使用-delete选项。find命令行被估算为表达式,假如首先添加该-delete选项,该命令将删掉指定起始点下方的所有内容。仍然使用-delete作为最后一个选项,在删掉之前,首先测试该命令而不使用该-delete选项。

/bin/rm:Argumentlisttoolong

使用该rm命令删掉包含大量文件的目录时,会出现此错误消息。发生此类情况是由于文件数小于命令行参数大小的系统限制。

这个问题有几种不同的解决方案。诸如,您可以cd自动或使用循环挨个删掉子目录到目录。

最简单的解决方案是首先使用该find命令删掉目录中的所有文件,之后删掉目录:

find/dir-typef-delete&&rm-r/dir

总结

使用rm和find您可以快速有效地删掉基于不同标准的目录。

删掉目录是一个简单而简单的过程,但您必须留神不要删掉重要数据。

本文原创地址://gulass.cn/yjzbtdffkysc.html编辑:刘遄,审核员:暂无