您的位置:首页 > 运维架构 > Linux

[一文一命令]rm命令详解

2013-12-20 13:44 441 查看
rm名称:rm - remove files or directories 移除文件或者目录
语法:rm [option] [file|directory]
功能简述:rm是常用的命令,主要功能是删除一个目录中的一个或多个文件或者目录,它也可以将某个目录下的所有文件及子目录均删除。对于链接文件,只删除链接文件,原文件保留。Rm是一个比较危险的命令,所以执行时要比较仔细。
参数:
-f -force 忽略不存在的文件,从不给提示.强制删除。
-i --interactive 进行交互式删除(rm 模式是已经通过别名加上-i选项)
-r -R –recursive 指示将参数中列出的全部目录和子目录均递归的删除(删除的很彻底,慎用)
-v --verbose 详细显示进行的步骤

使用实例:
1)删除以.log结尾的文档,并且不进行询问
[root@bogon tmp]# ls -al
total 32
drwxrwxrwt 6root root 4096 Apr 25 17:31 .
drwxr-xr-x 23 root root 4096 Apr 25 16:41 ..
-rw-r--r-- 1root root 0 Apr 25 17:31 1.log
-rw-r--r-- 1root root 0 Apr 25 17:31 2.log
-rw-r--r-- 1root root 0 Apr 25 17:31 3.log
drwxrwxrwt 2root root 4096 Apr 25 16:42 .font-unix
drwxrwxrwt 2root root 4096 Apr 25 16:41 .ICE-unix
drwx------ 2root root 4096 Apr 25 16:43 ssh-NwUepv2987
drwxr-xr-x 3root root 4096 Apr 25 17:06 test
[root@bogon tmp]# rm -f *.log
[root@bogon tmp]# ls -al
total 32
drwxrwxrwt 6root root 4096 Apr 25 17:31 .
drwxr-xr-x 23 root root 4096 Apr 25 16:41 ..
drwxrwxrwt 2root root 4096 Apr 25 16:42 .font-unix
drwxrwxrwt 2root root 4096 Apr 25 16:41 .ICE-unix
drwx------ 2root root 4096 Apr 25 16:43 ssh-NwUepv2987
drwxr-xr-x 3root root 4096 Apr 25 17:06 test

2)删除test目录下的所有文件,并不进行提示
[root@bogon tmp]# rm -rf test
[root@bogontmp]# ll
total 4
drwx------ 2root root 4096 Apr 25 16:43 ssh-NwUepv2987

3)自定义回收站功能:移除时,只是将文件移除到指定的某个文件中,等日后确定没有使用了,再统一删除。
[root@bogontmp]# myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo"moved to $D ok"; }
##将文件移到一个/tmp目录下一以当时时间为命名的文档中。也可以指定到一个具体的目录中。

[root@bogon tmp]# ll
total 4
drwx------ 2 root root 4096 Apr 25 16:43ssh-NwUepv2987
[root@bogon tmp]# touch 1.log 2.log
[root@bogon tmp]# ll
total 4
-rw-r--r-- 1 root root 0 Apr 25 17:49 1.log
-rw-r--r-- 1 root root 0 Apr 25 17:49 2.log
drwx------ 2 root root 4096 Apr 25 16:43ssh-NwUepv2987
[root@bogon tmp]# myrm [12].log
moved to /tmp/20130425175009 ok
[root@bogon tmp]# ll
total 8
drwxr-xr-x 2 root root 4096 Apr 25 17:5020130425175009
drwx------ 2 root root 4096 Apr 25 16:43ssh-NwUepv2987
[root@bogon tmp]# ls -r 20130425175009/ ###ls 指令递归的查询目录里包含是文件
2.log 1.log
[root@bogon tmp]#

------------------------------后续自我小结----------------------------------------

小结:自己定义临时删除命令,是通过创建一个function,先在tmp目录下新建一个以日期命令的文件夹,然后将要删除的内容移动这个目录下。
rm命令也是属于功能比较简单的命令,还是之前说的一定要有想法的结合性的使用这个功能。比如删除某个时间点的文件那,删除某个时间点,某个用户创建的文件。这个要和其他的文件结合起来使用。或者是用删除命令生活的文件等等。包括判断性的删除文件。但如果仅对单个rm实现的功能来看的话,其实也是不难的,就是删除东西而已。
-----------------------------------------------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息