但在开始之前,值得指出的是,本文中的所有示例都在 16.04 LTS 中进行了测试。
Linux rm 命令概述
通俗地说,我们可以认为rm命令是用来删除文件和目录的。 以下是该命令的语法:
rm [选项]... [要删除的文件/目录]...
以下是该命令的使用说明:
GUN 版本的 rm 命令的手册文档。 rm 删除每个指定的文件,默认情况下不删除目录。
当删除三个以上文件或提供-r、-R或--(LCTT译注:表示递归删除目录中的文件)选项时,如果-I(LCTT译注:大写I)或--=一次选项(LCTT注释:表示开启一次交互),rm命令会提示用户是否继续整个删除操作。 如果用户的响应不是确认(LCTT注释:无回复y),则整个命令将立即终止。
另外,如果删除的文件不可写且标准输入是终端,那么如果不提供-f或--force选项,或者提供-i(LCTT注释:小写i)或--=选项, rm 会提示用户是否删除该文件。 如果用户的响应不是确认(LCTT注释:无回复y),则该文件将被跳过。
以下问答示例将帮助您更好地理解该命令的使用。
Q1. 如何使用rm命令删除文件?
它非常简单和直观。 您只需将文件名(如果文件不在当前目录中,则为文件路径)传递给 rm 命令。
(LCTT翻译注释:可以传入多个文件名,以空格分隔。)
rm 文件1 文件2 ...
喜欢:
rm testfile.txt
Q2。 如何使用rm命令删除目录?
如果您尝试删除目录,则需要提供 -r 选项。 否则 rm 将抛出一个错误,告诉您它正在尝试删除目录。
(LCTT翻译:-r表示递归删除目录下的所有文件和目录。)
rm -r [目录名称]
喜欢:
rm -r testdir
Q3。 如何在删除前提供确认提示?
如果您希望在每次删除操作完成之前出现确认提示,请使用 -i 选项。
rm -i [文件/目录]
例如,如果要删除目录“”,但每次删除操作都需要确认提示,可以这样做:
rm -r -i testdir
Q4。 如何让 rm 忽略不存在的文件或目录?
如果删除不存在的文件或目录,rm命令会抛出错误,如:
但是,如果您愿意,可以使用 -f 选项(LCTT 注释:“force”)强制执行操作并忽略错误消息。
rm -f [文件...]
Q5. 如何让rm只在某些场景下确认删除?
选项-I保证删除3个以上文件或递归删除(LCTT译注:如删除一个目录)时只提示一次确认。
例如,下面的截图显示了-I选项的效果——删除两个文件时不提示,删除3个以上文件时有提示。
Q6. 删除根目录时rm如何工作?
当然,删除根目录(/)是Linux用户最不想做的事情。 这就是为什么默认的rm命令不支持根目录的递归删除操作。 (LCTT 翻译:早期的 rm 命令没有这种预防行为。)
但是,如果必须完成此操作,则需要使用--no--root选项。 当提供此选项时,rm 将不会特殊对待根目录(/)。
如果您想了解Linux用户在什么情况下删除根目录,请点击这里。
Q7. 如何让 rm 只删除空目录?
如果删除目录时需要rm只删除空目录,可以使用-d选项。
rm -d [目录]
下面的屏幕截图显示了 -d 选项的使用 - 仅删除空目录。
Q8. 如何让rm显示当前删除操作的详细信息?
如果您希望 rm 显示当前操作完成的详细信息,请使用 -v 选项。
rm -v [文件/目录]
喜欢:
综上所述
考虑到 rm 命令提供的功能,可以说它是 Linux 中最常用的命令之一(就像 cp 和 mv 一样)。 在本文中,我们讨论了它提供的几乎所有主要选项。 rm 命令有一点学习曲线,因此在开始在日常工作中使用它之前,您需要花一些时间练习它的选项。 有关详细信息,请参阅此命令的手册页。
通过:
作者:Arora 译者:校对:wxy
本文由 LCTT 原创编译,Linux China 自豪推出