如何删除Linux中的目录
其中一个教程中,我们已经解释了如何在Linux中创建目录。
现在让我们检查如何删除Linux中的目录,它是空的或者具有文件的子目录。
尤其是当我们需要在系统上释放一些空间时,尤其是为了保存更多文件或者安装其他包。
有很多方法可以其中删除Linux中的目录。
如果我们使用GUI系统,如GNOME,MATE或者KDE等离子体,则可以使用文件管理器,或者我们可以通过终端进行。
使用GUI系统删除目录将其带到崩溃时,可以从其恢复的Windows中的回收站等效。
但是,在最小系统上的命令行上工作时,方案是不同的,因为删除目录后,它将永久删除并且无法恢复。
本教程将带我们完成各种方式,我们可以其中删除Linux中的目录。
使用rmdir命令删除目录
rmdir命令,short for'remove目录'是一个用于删除空目录的命令行工具。
如果目录为空,则操作将是成功的。
删除目录的语法如下:
$sudo rmdir directory_name
例如,要删除一个名为"mydirectory"的空目录,请运行命令:
$sudo rmdir mydirectory
如果目录不为空,则显示错误,如图所示,将在屏幕上显示:
'rmdir: failed to remove ‘mydirectory’: Directory not empty'
错误是一个清楚的指示,目录包含文件或者文件夹或者两者。
使用rm命令删除目录
删除短路,RM命令用于删除空和非空目录。
RM命令通常用于删除Linux中的文件。
但是,我们可以通过一些可以删除目录的参数。
例如,要递归地删除目录(删除目录与其内容),请使用递归选项-R
(-r或者-rocursive),如下所示。
$sudo rm -r mydirectory
如果是写保护的指示,系统会提示我们是否继续删除目录中的文件和整个目录。
为我们节省令人烦恼和不断陷入此类提示的烦恼和不便,请添加"-F""选项以强制删除而不会提示。
$sudo rm -rf mydirectory
此外,我们可以在单个命令中删除多个目录,如下面的命令所示。
该命令删除所有目录及其子目录,而不会提示删除。
$sudo rm -rf mydirectory1 mydirectory2 mydirectory3
要更谨慎地锻炼,我们可以使用"-I"选项,该选项会提示删除目录和子目录。
但是,正如我们之前看到的那样,如果我们有几个子文件夹和文件,这可能是非常烦人的。
要解决这种不便,请使用"-i"标志"促使我们一次。
$sudo rm -rI mydirectory/
当我们为"是"击中"y"时,该命令将删除目录中的所有子文件夹和文件,而不会提示任何进一步。
要删除空目录,请通过以下方式如下所示。
$sudo rm -d mydirectory
使用find命令
find命令是一个命令行工具,可帮助用户根据特定搜索条件或者表达式搜索文件以及目录。
此外,该命令可用于搜索目录并根据指定的搜索条件删除它们。
例如,要在当前目录中删除名为"MyDirectory"的目录,请运行以下命令。
$sudo find . -type d -name "mydirectory" -exec rm -rf {} +
让我们在命令中分解参数
(。
)表示正在执行搜索操作的目录。
如果要在当前目录中执行搜索,请使用周期标志(。
)
-type d这将设置搜索操作以仅搜索目录。
-Name这指定了目录的名称。
-exec rm -rf这删除了所有目录及其内容。
{} +这将添加在RM命令末尾找到的所有文件。
让我们拍另一个例子:
删除空目录
如果要删除所有空目录,请使用以下命令:
$sudo find. -type d -empty -delete
这在当前工作目录中递归搜索
-Type D这只会将搜索保留对目录
- 确认这仅将搜索模式限制为空目录
-delete这将删除找到的所有空目录,包括子目录。
如果我们有大量的空目录,则使用shell脚本删除空目录。