「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
rm 命令
- 一、常用操作
 - 1. 删除文件
 - 2. 删除目录
 
- 二、其他操作
 
作用:删除文件或目录
参数:
- -f 直接删除,不需要确认。
 - -r 递归删除(用来删除目录)
 - -i 删除前逐一询问。
 - -v 显示步骤
 - -d 只删除空目录
 
一、常用操作
rm 文件名			# 删除文件(询问确认)
rm -f a.txt			# 删除文件(不询问)
rm -f *.txt			# 删除以 txt 结尾的文件
rm -f a*			# 删除以 a 开头的文件
rm -f ./-file		# 删除以 - 开头的文件
rm -f a.txt b.txt	# 同时删除多个文件(空格间隔)
rm -f .*			# 删除隐藏文件
rm -r 目录			# 删除目录(询问确认)
rm -rf 目录			# 删除目录(不询问)
rm -rfv 目录			# 显示删除步骤
rm -df *			# 只删除空目录
 
1. 删除文件
1)rm 后面直接跟文件名,可以删除文件,删除前会询问是否删除(y确认,n取消)。
rm 文件名
 

2)如果不需要询问,直接删除,可以加上 -f 参数
rm -f a.txt
 

3)删除所有txt结尾的文件,配合通配符
rm -f *.txt
 

4)删除所有 a 开头的文件
rm -f a*
 

这种格式也可以,./ 代表当前目录,意思是删除当前目录下所有a开头的文件。
rm -f ./a*
 

5)同时删除多个文件,用空格间隔
rm -f a.txt b.txt
 

提示:文件名可以用Tab键补全,防止手动输入错误。
6)删除隐藏文件
rm -f * 并不能删除隐藏文件,想要删除隐藏文件,可以使用通配符
rm -f .*
 

当然,. 和 .. 这两个目录仍然不会被删除
2. 删除目录
1)删除目录需要使用 -r 参数(文件可以直接删,但目录不能直接删),默认会询问是否删除(y确认,n取消)。
rm -r 目录
 

2)加上 -f 参数,可以直接删除,不再询问。
rm -rf 目录
 

3)显示删除的步骤
rm -rfv test/
 

4)使用 -d 参数,可以只删除空目录。
像下面这样,我删除当前目录下的所有目录,只有空目录被删除,非空的目录就被跳过,不会删除。
rm -df *
 

二、其他操作
1)删除链接文件时,只会删除自身,而不会删除链接文件所指向的文件。
2)删除 - 开头的文件
系统默认-后面跟参数,如果直接用 rm -file,系统会把file当成参数,从而报错。
可以使用以下两种方式绕过:
rm -- -file
rm -f ./-file
 

3)Linux没有回收站功能,删除的文件无法找回,删除前一定要确认好,以免误删。


![[C++]深复制与浅复制](https://img-blog.csdnimg.cn/9390ec34ea6840f6afcafdd826d442a1.png)
















