如何从文件夹结构中获取所有文件的列表?

时间:2010-02-22 18:57:43

标签: file filesystems

如何获取目录中所有文件的列表?它应该只给我文件,它应该搜索所有的子目录,以及它们内部的目录等。基本上是整个文件夹结构。

我有成千上万的文件和目录。我写了一个递归函数,但它超级慢。是否有任何命令或技巧可以迅速做到这一点?它必须在Windows和Mac中运行。

3 个答案:

答案 0 :(得分:2)

递归文件系统很慢。特别是如果你想让它跨平台。

答案 1 :(得分:2)

您没有澄清是否要对列表执行某些操作,只是将其转储到控制台或其他任何内容,最重要的是,您希望使用哪种语言。

大多数标准库都有遍历目录树的方法。例如,Python有一个方便的os.walk(谷歌为此,你会发现很多例子)。您可以应用各种过滤器来获得您关心的内容。类似的工具有Java和perl。这三种语言都是便携式的。

话虽如此,很多实际处理都是在OS级别进行的。在促进文件系统遍历方面,某些操作系统比其他操作系统慢。您也很可能在磁盘上击中,这会增加不同数量级的缓慢。

答案 2 :(得分:1)

好吧,我发现了这个,这比我的递归函数要快得多......

http://www.rooftopsolutions.nl/article/177