Ruby:迭代认为文件夹中的所有.rb(包括子文件夹)文件

标签 ruby

文件结构:

folderA/
 - folder1/
   - file1.rb
   - file2.rb
 - folder2/
   - folder1/
     - file1.rb
   - folder2/
     - file1.rb
 - file1.rb
 - file2.rb

使用下面的代码,我只能迭代 folderA/file1.rbfolderA/file2.rb

# EDITTED
Dir.glob('folderA/*.rb') do |file|
  puts file
end

是否可以仅使用 glob(不使用 Dir.foreach(dir)..if..)遍历所有 .rb 文件(包括子文件夹)?

附言 Ruby v.1.8.6

最佳答案

Dir.glob('folderA/**/*.rb') do |file|
  puts file
end

来自官方docs :

**
Matches directories recursively.

关于Ruby:迭代认为文件夹中的所有.rb(包括子文件夹)文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11798994/

相关文章:

ruby - 当我在正则表达式的范围量词中放置一个空格时,它有什么意义?

ruby - 在 Ruby 1.9.2 中使用 SOAP 和其他标准库

ruby - 是否可以通过 Web 应用程序的 Java 对话框提示用户输入密码?

python - Ruby pack ('H*' ) 在 Python 中等效

Ruby - 获取方法参数名称和值

ruby - 续集 auto_validation 不检查字符串 maxlength

ruby - 给定一个类动态创建一个数字

ruby-on-rails - VScode ERB 和 HTML 格式化程序不能一起工作

ruby-on-rails - 如何在 Rails 环境中将参数传递给 Rake 任务?

ruby-on-rails - 在访问 Omniauth 路由之前验证 Devise 用户