概述

rm 命令可用于删除文件或目录,是 remove 的缩写。
在这里插入图片描述

语法

rm 命令的语法如下:rm [选项] 文件或目录

该命令支持的选项有:

选项说明
-d删除目录
-f强制删除文件或目录,忽略不存在的文件,不提示删除确认信息
-i删除文件或目录之前询问用户进行确认,默认 rm 命令就会询问
-I在删除超过三个文件或递归删除前要求确认
-r递归删除,将指定目录下的所有文件及其子目录一并删除
-v显示删除指令 rm 的执行过程
–help显示帮助信息
–version显示版本信息

注:谨慎使用 rm -rf 命令,不要删库跑路。

使用

删除文件【★★★★★】

删除文件,执行如下指令,在删除前会进行交互,确认是否真的要删除,如果真的要删除输入 y 进行确认:

rm 文件名

在这里插入图片描述

删除目录【★★★★★】

也可以直接删除目录,通常我们会要求删除目录及目录下的所有子文件和子目录,所以必须加上 -r 选项,递归删除。

rm -r 目录名

在这里插入图片描述

删除不确认【★★★★★】

像我们上面删除一个目录,如果目录下有多个子文件和子目录,每一个都需要确认一遍,非常麻烦,所以如果我们想要直接删除,不询问确认信息,那么直接使用 -f 选项即可,即可强制删除,无论是文件还是目录:

# 删除文件不确认
rm -f 文件名
# 删除目录不确认
rm -rf 目录名

在这里插入图片描述

删除指定后缀的所有文件

在删除中,我们除了指定确定的文件名或目录名外,还可以使用通配符,如 * 表示所有。如下:

# 表示删除当前目录下的所有文件和目录
rm -rf *
# 表示删除所有以 .txt 后缀结尾的文件
rm -rf *.txt

在这里插入图片描述

删除指定开头的文件

我们也可以删除以指定字符或字符串开头的文件,使用语法如下:

# 删除以 "hello" 开头的所有文件 
rm -- hello*
# 删除以 "hello" 开头的所有文件,另外一种语法
rm ./hello*

在这里插入图片描述

删除隐藏文件

注意,rm -rf * 命令是删除不掉隐藏文件和文件夹的。如果要删除掉当前目录下的所有隐藏文件和目录,需要执行如下命令:

rm -rf .*

但仍然不会删除掉 ... 这两个目录。

如果要删除 /home 目录下所有以 .tar.gz 后缀结尾的隐藏文件,可以执行如下命令:

rm -rf /home/.*.tar.gz
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐