关于linux系统遍历一个目录下所有文件的代码原理以及代码

2021/11/24 7:13:28

本文主要是介绍关于linux系统遍历一个目录下所有文件的代码原理以及代码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

11.23

这段时间一直在写linux系统内核的代码,刚开始就在linux文件系统这儿纠了好久,直到现在,说不会写吧!写了好几版了,也生成exe了,说会写吧,代码一跑,哦豁,没达到自已想要的效果,就是文件目录没遍历成功。

最关键的点还是,符号链接以及目录遍历的事情,不出现segmentation fault就很不错了。跟我们平常的循环不大一样,这个是目录遍历,i-node文件表多多少少还是得懂点的。

书上有两个代码,一个是只遍历一个目录下的一层级目录,不是我想要的效果,一个是遍历了一个目录下所有的层级目录,但是主要目的是计算那个目录下的不同文件类型的数量以及占比,勉强符合我的要求,我保证我看懂了,甚至看到我都快把那一百来行代码背出来了,看了太多次了,但是一改一写出来,得,不是那个味儿,继续整。网上倒是有个符合条件的,几十行代码,小巧功能也完全符合,又不是我写的,不得劲儿,还是得自已整。

看书上大佬写的文件目录遍历的代码,我唯一印象深刻的就是,一定要忽略掉符号链接这个事,否则好像容易造成死循环。以及,opendir readdir closedir strcmp strcpy lstat 这几个函数我都快要写臭了,竟然还是写不出我想要的效果,尴尬!

总之,文件目录遍历在我看来还是挺重要的,虽然是这么个固定功能,但是人不一样,写出来的代码自然也是,不说了,继续去写了,写出来倒是可以贴一下,反正是我自已写的,自已是最了解思路的,别人拿也拿不走,这是我看了别人写的代码加上分析我自已的代码得出来的结论。



这篇关于关于linux系统遍历一个目录下所有文件的代码原理以及代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程