在Linux系统中批量删除多个文件的方法总结
当我们在linux系统中要删除数万或者数十万甚至数百万的文件时使用rm -rf *就不太好用,因为要等待很长一段时间。在这种情况之下我们可以使用linux系统命令rsync来巧妙的处理。rsync实际上用的是替换原理,处理数十万个文件也是秒删。 1. rsync安装,有些系统默认安装有该命令ubuntu系统:
代码如下:
fedora 系统:
代码如下:
其他的可以源码安装,到下面的网站下载http://rsync.samba.org
2. rsync提供了一些跟删除有关的参数rsync –help | grep delete –del an alias for –delete-during –delete delete extraneous files from destination dirs –delete-before receiver deletes before transfer, not during –delete-during receiver deletes during transfer (default) –delete-delay find deletions during, delete after –delete-after receiver deletes after transfer, not during –delete-excluded also delete excluded files from destination dirs –ignore-errors delete even if there are I/O errors –max-delete=NUM don\’t delete more than NUM files其中–delete-before接收者在传输之前进行删除操作
3. 示例清空目录或文件,如下: 1、先建立一个空目录
代码如下:
2、用rsync删除目标目录
代码如下:
或者
代码如下:
这样/var/edatacache目录就被快速的清空了。
选项说明:–delete-before 接收者在传输之前进行删除操作–progress 在传输时显示传输过程-a 归档模式,表示以递归方式传输文件,并保持所有文件属性-H 保持硬连接的文件-v 详细输出模式–stats 给出某些文件的传输状态-d transfer directories without recursing
删除文件夹如果大量小文件都集中在几个目录中,那么这个方法就有用了。
代码如下:
将会强制删除/var/log/httpd/access.log这个文件-r 就是向下递归,不管有多少级目录,一并删除-f 就是直接强行删除,不作任何提示的意思-i 进行交互式删除。提示:使用rm命令要小心。因为一旦文件被删除,它是不能被恢复的。了防止这种情况的发生,可以使用i选项来逐个确认要删除的文件。如果用户输入y,文件将被删除。如果输入任何其他东西,文件则不会删除。使用这个rm -rf删除文件的时候一定要格外小心,linux没有回收站的。rm -r 目录名:将子目录及子目录中所有档案删除
代码如下:
总计 24drwxr-xr-x 7 root root 4096 10-25 18:07 scf drwxr-xr-x 2 root root 4096 10-26 14:51 test1 drwxr-xr-x 3 root root 4096 10-25 17:44 test2 drwxrwxrwx 2 root root 4096 10-25 17:46 test3 drwxr-xr-x 2 root root 4096 10-25 17:56 test4 drwxr-xr-x 3 root root 4096 10-25 17:56 test5
代码如下:
rm:是否进入目录 “test1”? y rm:是否删除 一般文件 “test1/log3.log”? y rm:是否删除 目录 “test1”? y
代码如下:
总计 20drwxr-xr-x 7 root root 4096 10-25 18:07 scf drwxr-xr-x 3 root root 4096 10-25 17:44 test2 drwxrwxrwx 2 root root 4096 10-25 17:46 test3 drwxr-xr-x 2 root root 4096 10-25 17:56 test4 drwxr-xr-x 3 root root 4096 10-25 17:56 test5 [root@localhost test]# rm -rf 目录名 :把子目录及子目录中所有档案删除,并且不用一一确认
代码如下:
总计 16drwxr-xr-x 7 root root 4096 10-25 18:07 scf drwxrwxrwx 2 root root 4096 10-25 17:46 test3 drwxr-xr-x 2 root root 4096 10-25 17:56 test4 drwxr-xr-x 3 root root 4096 10-25 17:56 test5 [root@localhost test]#
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布投稿,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长,可领回失去的金币,并额外有奖!
6. 如遇到加密压缩包,默认解压密码为"www.zyfx8.cn",如遇到无法解压的请联系管理员!
本站部分文章、资源来自互联网,版权归原作者及网站所有,如果侵犯了您的权利,请及时联系我站删除。免责声明
资源分享吧 » 在Linux系统中批量删除多个文件的方法总结
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 织梦模板使用说明
- 你下载的织梦模板并不包括DedeCMS使用授权,根据DedeCMS授权协议,除个人非盈利站点外,均需购买DedeCMS商业使用授权。购买地址: http://www.desdev.cn/service-dedecms.html