相思资源网 Design By www.200059.com
测试一下Linux下面删除大量文件的效率。
首先建立50万个文件
$ test for i in $(seq 1 500000);do echo text $i.txt;done
1. rm删除
$ time rm -f *
zsh: sure you want to delete all the files in /home/hungerr/test [yn]"htmlcode">import os import timeit def main(): for pathname,dirnames,filenames in os.walk('/home/username/test'): for filename in filenames: file=os.path.join(pathname,filename) os.remove(file) if __name__=='__main__': t=timeit.Timer('main()','from __main__ import main') print t.timeit(1) 1 2 $ python test.py 529.309022903大概用时9分钟。
6. Perl删除
$ time perl -e 'for(<*>){((stat)[9]<(unlink))}'
perl -e 'for(<*>){((stat)[9]<(unlink))}' 1.28s user 7.23s system 50% cpu 16.784 total16s
这个应该最快了。
7、结果:
- rm:文件数量太多,不可用
- find with -exec 50万文件耗时43分钟
- find with -delete 9分钟
- Perl 16sPython 9分钟
- rsync with -delete 16s
结论:删除大量小文件rsync最快,最方便。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
Linux,删除文件,方法,效率
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无Linux删除文件不同方法效率对比的评论...