### 1、统计和遍历
/tmp/1 300000
/tmp/1/11 300000
通过du --inodes统计文件数量,用时约14s
# time du --inodes 1
300001 1/11
600002 1
real 0m13.133s
user 0m0.236s
sys 0m11.376s
# time du --inodes 1
300001 1/11
600002 1
real 0m13.472s
user 0m0.249s
sys 0m11.638s
# time du --inodes 1
300001 1/11
600002 1
real 0m14.723s
user 0m0.257s
sys 0m12.657s
通过ls -fR统计和遍历文件,用时约0.4s
# time ls -fR 1 | wc -l
600008
real 0m0.421s
user 0m0.108s
sys 0m0.281s
# time ls -fR 1 | wc -l
600008
real 0m0.284s
user 0m0.141s
sys 0m0.142s
# time ls -fR 1 | wc -l
600008
real 0m0.284s
user 0m0.136s
sys 0m0.147s
通过tree统计和遍历文件,用时约15s
# time tree 1 | wc -l
600004
real 0m14.550s
user 0m1.577s
sys 0m12.049s
# time tree 1 | wc -l
600004
real 0m15.918s
user 0m1.394s
sys 0m12.755s
# time tree 1 | wc -l
600004
real 0m15.191s
user 0m1.390s
sys 0m12.204s
通过rsync统计和遍历文件,用时约16s
# time rsync -avn 1/ 2 > 111
real 0m16.019s
user 0m1.406s
sys 0m13.019s
# time rsync -avn 1/ 2 > 111
real 0m15.751s
user 0m1.433s
sys 0m12.583s
# time rsync -avn 1/ 2 > 111
real 0m15.924s
user 0m1.426s
sys 0m12.902s
|命令|统计|遍历|用时|
|-|-|-|-|
|du --inodes|Y|N|14|
|ls -fR|Y|Y|0.4|
|tree|Y|Y|15|
|rsync -avn|Y|Y|16|
综合以上结果,带有-f参数的ls具有最高的统计和遍历效率,du --inodes并不高效。
### 2、删除文件
使用rsync删除,耗时41s
# ls -fR 6 | wc -l
3
# ls -fR 4 | wc -l
600008
# time rsync -av --delete-before 6/ 4
building file list ... done
sent 43 bytes received 6,900,026 bytes 166,266.72 bytes/sec
total size is 0 speedup is 0.00
real 0m40.643s
user 0m1.174s
sys 0m34.911s
使用ls -fR | xargs rm -rf删除,耗时28s,但是需要手动遍历目录,单一目录推荐
# ls -fR 3 | wc -l
600008
# time find 3 -type d
3
3/11
real 0m0.329s
user 0m0.179s
sys 0m0.149s
# cd 3
[root@centos7_1 3]# time ls -f | xargs rm -f
real 0m13.784s
user 0m0.418s
sys 0m12.607s
[root@centos7_1 3]# cd 11
[root@centos7_1 11]# time ls -f | xargs rm -f
real 0m13.463s
user 0m0.460s
sys 0m12.293s
使用tree+rm删除,耗时41s,和rsync速度相当
# ls -fR 2 | wc -l
600008
# time tree -afi 2 | xargs rm -rf
real 0m41.808s
user 0m2.362s
sys 0m35.686s
# time tree -afi 1 | xargs -n 1000 rm -rf
real 0m38.698s
user 0m2.727s
sys 0m33.240s
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞3
添加新评论0 条评论