linux中快速列出文件列表的多种方法总结-创新互联
前言
创新互联公司主营望花网站建设的网络公司,主营网站建设方案,重庆APP软件开发,望花h5微信小程序搭建,望花网站营销推广欢迎望花等地区企业咨询最近在工作中碰到一个很棘手的问题,需要读取出ubuntu系统中某个目录下所有文件,由于服务器中存储的文件实在太多,导致此过程效率十分低下,动辄需要等待一个小时之久,还只是一个目录。于是如何快速获取文件列表便是这两天的头等大事,折腾半天找到一个较为快速的方法,记录如下,话不多说了,来一起看看详细的介绍吧。
多种实现方法
尝试了多种方法,有编程的和非编程的。
1、walk
python的walk库能够递归的读取目录下所有文件,这个是最常规的方法,然而效率有些缓慢。实现很简单,不赘述。
2、os.scandir
python中的os.scandir
方法官方解释为快速读取目录,测试了一下速度相对walk而言是由提高,但是还是达不到要求,也需要自己写递归,代码如下:
def scan_path(file_path, level = 3): files = [] if level >= 0: path = os.scandir(file_path) for p in path: if p.is_dir(): files.extend(scan_path(p.path, level - 1)) else: files.append(p.path) return files
分享文章:linux中快速列出文件列表的多种方法总结-创新互联
新闻来源:http://scgulin.cn/article/cdojho.html