Linux 中的 rm 命令及示例
rm命令是Linux中最常见、最基础的命令之一。即使您对 Linux 的使用经验有限,您也很可能听说过它。该命令的主要目的是删除文件和目录。使用此命令删除文件和目录无法撤消。
这意味着您应该谨慎使用此命令,因为如果没有备份,文件和目录就无法恢复。在 GUI 桌面环境中删除文件是一个更安全的选择,因为文件在被永久删除之前通常会进入回收站。然而,使用rm命令更加通用。这是 Linux 中大多数可以通过命令行或 GUI 完成的事情的常见情况。
在本指南中,您将通过示例了解如何在 Linux 中使用rm命令。请按照以下步骤了解可与此命令一起使用的各种选项。
在本教程中您将学习:
- 如何在Linux上使用rm命令
# -r:删除整个目录及其内容
# -f:强制删除文件
rm -rf folder_name
类别 | 要求、约定或使用的软件版本 |
---|---|
系统 | 任何Linux 发行版 |
软件 | R M |
其他 | 以 root 身份或通过命令对 Linux 系统进行特权访问sudo 。 |
惯例 | # – 要求给定的linux 命令以 root 权限直接作为 root 用户执行或使用sudo 命令 $ – 要求给定的 linux 命令 作为常规非特权用户执行 |
常用选项
rm
命令用于从命令行删除文件和目录。学习该命令并不需要很长时间,并且没有很多基本选项可供使用。但是,它仍然提供了许多在某些情况下派上用场的选项。请按照以下示例了解一些最常见的示例。
Linux 中的 rm 命令基本示例
1、使用rm命令
删除文件非常简单。我们可以通过输入rm后跟文件名来实现这一点。
$ rm file.txt
运行此命令删除了该文件file.txt。但我们也可以从与当前目录不同的目录中删除文件,如下面的命令所示。
$ rm ~/Downloads/linux.iso
运行此命令将删除linux.iso位于该~/Downloads目录中的文件。
2、如果您使用rm不带额外选项的命令来删除写保护的文件,该rm命令会要求确认。该rm命令可以与选项一起使用-f来绕过此过程并立即删除文件。
$ rm -f file.txt
运行此命令将 - 正如-f(强制)选项所暗示的那样 - 强制删除我们的file.txt文件,而不需要给予它批准。
3、在前面的示例中,我们展示了rm如果您尝试删除写保护的文件,命令本身将如何要求确认。但如果您尝试删除常规文件,您将不会收到确认提示。-i为此,您必须使用该选项。您应该使用它来避免意外删除文件,因为该rm命令无法撤消。
$ rm -i file.txt
此命令将询问您是否要继续删除有问题的文件。键入y将告诉命令继续操作,键入n将中止命令。
4、到目前为止,我们已经展示了该rm命令可以从给定目录中删除单个文件,但它也可以一次删除多个文件。我们可以rm单独使用该命令来执行此操作,只需键入命令,然后键入所需数量的文件名。
$ rm file1 file2 file3
此命令将永久删除我们当前工作目录中的file1、file2、file3。
5、正如我们在本文开头提到的,该rm命令可以永久删除文件和目录。使用该-r
选项,我们可以删除整个目录及其内容。
$ rm -r directory01
此命令将永久删除directory01
和它包含的任何文件或子目录。
高级用法
rm命令非常简单,但正如您在本文的示例部分中所观察到的,它包含很多选项。其中许多选项都不太引人注目,甚至一些经验丰富的系统管理员也可能不知道它们。然而,它们绝对可以在各种情况下派上用场。在本指南的这一部分中,我们将向您展示一些我们认为有用的rm命令鲜为人知的选项。
Linux 高级示例中的 rm 命令
1、要快速删除当前工作目录中的所有文件,只需在命令后面使用星号即可rm。此命令不会删除目录本身,只会删除其内容。
$ rm *
2、删除空目录所需的步骤略有不同。这就是该-d选项的用武之地。
$ rm -d oldfiles
此命令将永久删除名为空的目录oldfiles
。
3、rm您可以通过与命令一起运行它来以一种非常有趣但同样有用的方式使用该命令xargs。这样做可以让您高效地删除大量文件。为此,您需要在常规文本文件中列出所需的文件名。之后,该xargs命令将能够读取该列表,并rm通过可操作的方式将数据提供给命令。
$ xargs rm < filelist.txt
上面的命令将删除我们在名为 filelist.txt
的文本文件中列出的所有文件名。
4、如果不使用特定选项,该rm命令无法删除文件名中带有破折号的文件。因为 Linux 命令通常使用破折号作为命令行选项。因此,在这种情况下,我们键入命令rm,后跟双破折号 (-)。
$ rm -- -dashfile.txt
此命令 -dashfile.txt
使用双破折号选项 (–) 进行删除。
5、您可以使用rm带有通配符的命令来删除多个文件。以这种方式删除多个文件与 rm [file]. . . [file] . . .
是不同的,因为这只会删除名为example1.list
, example2.list
, example3.list
的文件。
$ rm example[123].list
此命令将删除我们前面提到的所有三个示例文件。
结束语
您现在应该已经很好地掌握了该rm命令。rm在本文中,您通过易于理解的示例学习了如何使用命令删除文件和目录。我们介绍了该命令的基础知识rm及其命令行选项的高级应用程序。