ruby - 如何使用ruby获取目录中的文件数

标签 ruby file-io directory

使用 ruby​​ 如何获取给定目录中的文件数,文件数应包括递归目录数。

例如:文件夹 1(2 个文件)-----> 文件夹 2(4 个文件) folder2 在 folder1 里面。 上述情况的总数应为 6 个文件。

ruby 中是否有任何函数可以获取此计数。

最佳答案

最快的方式应该是(不算目录数):

Dir.glob(File.join(your_directory_as_variable_or_string, '**', '*')).select { |file| File.file?(file) }.count

更短:

dir = '~/Documents'
Dir[File.join(dir, '**', '*')].count { |file| File.file?(file) }

关于ruby - 如何使用ruby获取目录中的文件数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6773413/

相关文章:

c - 返回文件*

java - 如何从文件内容创建 Java 字符串?

linux - 删除 linux 目录中的所有文件夹和文件,除了一个文件夹和该文件夹中的所有内容

objective-c - 在 NSPopUpButton 中显示文件夹

ruby - 在 ruby​​ 中创建带括号的符号

c - 访问目录和文件

ruby - 如何测试是否正在使用某些特定的 Rack 中间件?

vim - 在 gvim 中浏览目录不适用于 7.3 版本

ruby - rbenv gem 的 rdoc 在哪里?

ruby-on-rails - 在 Rails 中使用没有父 ID 的嵌套资源