linux删除大量过期文件,linux删除大量文件的6种方法
发布日期:2022-02-21 12:50:37 浏览次数:28 分类:技术文章

本文共 1370 字,大约阅读时间需要 4 分钟。

搜索热词

首先建立50万个文件

复制代码@H_502_4@ 代码如下:

test  for i in $(seq 1 500000)

for> do

for> echo test >>$i.txt

for> done

1 rm

复制代码@H_502_4@ 代码如下:

test  time rm -f *

zsh: sure you want to delete all the files in /home/hungerr/test [yn]? y

zsh: argument list too long: rm

rm -f *  3.63s user 0.29s system 98% cpu 3.985 total

由于文件数量过多,rm不起作用。

2 find

复制代码@H_502_4@ 代码如下:

test  time find ./ -type f -exec rm {} \;

find ./ -type f -exec rm {} \;  49.86s user 1032.13s system 41% cpu 43:19.17 total

大概43分钟。

3 find with delete

复制代码@H_502_4@ 代码如下:

test  time find ./ -type f -delete

find ./ -type f -delete  0.43s user 11.21s system 2% cpu 9:13.38 total

用时9分钟。

4 rsync

首先建立空文件夹blanktest

复制代码@H_502_4@ 代码如下:

~  time rsync -a --delete blanktest/ test/

rsync -a --delete blanktest/ test/  0.59s user 7.86s system 51% cpu 16.418 total

16s,很好很强大。

5 Python

复制代码@H_502_4@ 代码如下:

import os

import time

stime=time.time()

for pathname,dirnames,filenames in os.walk('/home/username/test'):

for filename in filenames:

file=os.path.join(pathname,filename)

os.remove(file)

ftime=time.time()

print ftime-stime

复制代码@H_502_4@ 代码如下:

~  python test.py

494.272291183

大概用时8分钟。

6 Perl

复制代码@H_502_4@ 代码如下:

test  time perl -e 'for(){((stat)[9]

perl -e 'for(){((stat)[9]

@H_502_4@

总结

以上是编程之家为你收集整理的linux删除大量文件的6种方法全部内容,希望文章能够帮你解决linux删除大量文件的6种方法所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

转载地址:https://blog.csdn.net/weixin_33958381/article/details/116825410 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:linux配置一个ip san存储服务器,网络存储服务ip-san搭建
下一篇:linux 反编译 obj,objdump反汇编

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2023年05月15日 03时29分18秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

最新文章