rm 是强大的删除命令,不仅可以删除文件,也可以删除目录。这个命令的基本信息如下。
命令名称:rm
英文原意:remove files or directories。
所在路径:/bin/rm。
执行权限:所有用户。
功能描述:删除文件或目录。
》》》传智播客linux培训班,带你从新手到大神,咨询右下角窗口咨询开班时间《《《
命令格式
[root@localhost ~]# rm[选项] 文件或目录
选项:
-f:强制删除(force)
-i:交互删除,在删除之前会询问用户
-r:递归删除,可以删除目录(recursive)
常见用法
【例 1】基本用法。
rm 命令如果任何选项都不加,则默认执行的是"rm -i 文件名",也就是在删除一个文件之前会先询问是否删除。例如:
[root@localhost ~]# touch cangls
[root@localhost ~]# rm cangls
rm:是否删除普通空文件"cangls"?y
#删除前会询问是否删除
【例 2】 删除目录。
如果需要删除目录,则需要使用"-r"选项。例如:
[root@localhost ~]# mkdir -p /test/lm/movie/jp/#递归建立测试目录
[root@localhost ~]# rm /test/
rm:无法删除"/test/": 是一个目录
#如果不加"-r"选项,则会报错
[root@localhost ~]# rm -r /test/
rm:是否进入目录"/test"?y
rm:是否进入目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm/movie/jp"?y
rm:是否删除目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm"?y
rm:是否删除目录"/test"?y
#会分别询问是否进入子目录、是否删除子目录大家会发现,如果每级目录和每个文件都需要确认,那么在实际使用中简直是灾难!
【例 3】强制删除。
如果要删除的目录中有 1 万个子目录或子文件,那么普通的 rm 删除最少需要确认 1 万次。所以,在真正删除文件的时候,我们会选择强制删除。例如:
[root@localhost ~]# mkdir -p /test/lm/movie/jp/#重新建立测试目录
[root@localhost ~]# rm -rf/test/
#强制删除,一了百了
加入了强制功能之后,删除就会变得很简单,但是需要注意,数据强制删除之后无法恢复,除非依赖第三方的数据恢复工具,如 extundelete 等。但要注意,数据恢复很难恢复完整的数据,一般能恢复 70%~80% 就很难得了。所以,与其把宝压在数据恢复上,不如养成良好的操作习惯。
虽然"-rf"选项是用来删除目录的,但是删除文件也不会报错。所以,为了使用方便,一般不论是删除文件还是删除目录,都会直接使用"-rf"选项。