命令:rm
这个命令是最常用的,rm
同样也有很多选项。您可以通过 man rm
来获得详细帮助信息。
用户可以用 rm 命令删除不需要的文件。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是断开了链接,原文件保持不变。
rm命令的一般形式为:rm [选项]... 目录... 删除指定的<文件>(即解除链接)。
-d --directory 删除可能仍有数据的目录 (只限超级用户)
-f --force 略过不存在的文件,不显示任何信息
-i --interactive 进行任何删除操作前必须先确认
-r/R --recursive 同时删除该目录下的所有目录层
-v --verbose 详细显示进行的步骤
--help 显示此帮助信息并离开
--version 显示版本信息并离开
要删除第一个字符为‘-’的文件 (例如‘-foo’),请使用以下其中一种方法:
rm -- -foo
rm ./-foo
请注意,如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。如果想保证
该文件的内容无法还原,请考虑使用 shred
。
范例:
删除所有rb语言程序档;删除前逐一询问确认 :
rm -i *.rb
将 Finished 子目录及子目录中所有档案删除 :
rm -r Finished
将 Finished 子目录及子目录中所有档案删除,并且不用--确认 :
rm -rf Finished
-r
: 删除目录用的选项,等同于rmdir
.
[root@localhost ~]# mkdir -p /tmp/test/123 [root@localhost ~]# rm -r /tmp/test/123 rm:是否删除目录 '/tmp/test/123'? y
但是和rmdir
不同的是,使用 rm -r
删除目录时,会问一下是否删除,如果输入 ‘y’ 则会删除,输入 ‘n’ 则不删除。当然 rm -r
也不会像 rmdir
不能删除非空目录,它是可以删除非空目录的。
‘-f’ : 表示强制删除,不再提示是否要删除,而是直接就删除了,而后面跟一个不存在的文件或者目录时,也不会报错,如果不加 ‘-f’ 选项会报错。
[root@localhost ~]# rm /tmp/test/123/123 rm: 无法删除 '/tmp/test/123/123': 没有那个文件或目录 [root@localhost ~]# rm -f /tmp/test/123/123
要删除一个目录时,即使加上 ‘-f’ 选项也会报错,所以删除目录一定要加 ‘-r’ 选项。
[root@localhost ~]# rm -f /tmp/test/123 rm: 无法删除 '/tmp/test/123': 是一个目录 [root@localhost ~]# rm -rf /tmp/test/123
关于rm,使用最多便是 -rf
两个选项合用了。不管删除文件还是目录都可以。但是方便的同时也要多注意,万一您的手太快后边跟了/那样就会把您的系统文件全部删除的,切记切记。