如何删除Linux中的文件和目录

时间:2020-02-23 14:38:25  来源:igfitidea点击:

删除基于Linux系统上的文件可以采用多种形式。
良好的旧图形文件管理器可以快速地做到这一点,但另一方面,命令行具有恰到好处的程序和选项的阿森纳。

我们将展示各种有用的选项,以及可用于几乎所有内容的基本命令。

使用Linux中使用命令行删除文件和目录

RM命令

主删除命令是RM命令。
这与各种任务的多个方法一起使用,最简单的语法是这样的: rm file_name

基本RM语法

这仅适用该文件在工作目录中时,如果我们正在尝试其中包含文件的目录上使用此文件,则这将不会有很大用。
仅使用此命令不删除目录。

RM命令的不同实用标志是:

-R.

此选项代表递归。
使用此命令时,还会删除满足其他条件的任何目录,以及其内部的文件。
例如,有一个名为test_dir的目录,其中有几个文件(如屏幕截图所示),可以使用-r标志删除这一点。

-D.

此标志可用于删除空目录。

-F

这是一个特别有用的标志。
在命令(多个文件中)中通常有文件,可能不存在。
也有其他错误。
这可能导致其他文件不删除。
因此,要解决此问题,我们可以使用-f(force)标志,从而删除与标准匹配的文件并忽略错误(如果有的话)。

-v.

详细标志(-V)可用于显示删除时的文件名。
这对于看到进程的进度很有用,我喜欢在大(或者高分数)的文件中使用这一点,因为我可以了解进度。

-i

使用Interactive(-i)标志在删除文件之前提供提示。
这可以主要用于清理文件,因为我们每次删除文件时都会得到提示。

有用的提示:

这是一个有点有用的快捷方式。
''字符可用于输入多个文件。
''实际上表示任何或者任何数量的字符。
如果输入"测试*"作为名称,则会包含以"测试"开头的文件,并在此之后有任何内容。
同样,使用'* test *'将包括任何文件/目录,其中包含名称中的"测试",无论在之前或者之后都可能是什么。

RMDIR命令

rmdir命令用于删除空文件。
基本语法如下: rmdir directory_name对rmdir命令非常有用的一个标志是:

-P.

父标志(-P)删除其内部其他(明显空)目录的目录。
如果存在作为/b/c的结构,其中'c'在'b中'b''和'b'中的'a'中的命令可以构造如下: rmdir -p a/b/c

查找命令

Find命令(如ispidant)仅用于查找具有特定条件的文件,但结果可以用作RM命令的输入。
这有点棘手,但它可以很容易地完成。
基本语法: find [path] -type [-d/-f] -name [name-conditions] -exec rm -r {} +我知道,我知道,这似乎很复杂,但让我解释:

  • [PATH]:需要由我们需要搜索文件所需的目录的位置替换。如果这是我们当前所在的目录(快速检查使用命令PWD),则将[路径]替换为' 。如果你想使用你的主目录,请使用'~'。

  • -type:果只想删除目录,并且如果要删除文件,则使用'd'标志('d'或者'f''或者'f之后'''''''')不需要)。如果要删除两个目录和文件,请不要实际上使用此选项。

  • -NAME:这包括文件名的条件。如果我们有一个特定的关键字,文件'和文件夹的名称包含,请按以下方式使用:'关键字'(需要单引号)。
    "
    这里的''几乎意味着一切。也就是说,此命令将搜索名称拥有所有内容以及关键字之前的任何内容的文件以及关键字之后的所有内容以及任何内容。

必须使用的其余命令,但仅用于信息,"-exec"部分指示以前的命令从命令的输出用作以下命令的输入。
下一部分'rm -r'删除作为从较早部分的输入给出的所有内容,'{} +'部分指示rm命令从查找命令使用输出。

例子: find ~ -type -f -name *test* -exec rm -r {} +这在名称中的任何部分中,在主目录中以及仅文件,而不是目录中,查找具有"测试"的文件。