我试图在目录中按文件名查找文件。我不确定解决这个问题的最佳方法是什么。该文件可以嵌套在根目录中的其他目录中。
问问题
1350 次
3 回答
4
您可以使用Dir.glob,例如:
Dir.glob(File.join("**","*.rb"))
它将递归地在当前目录中查找“*.rb”文件。
于 2012-11-29T16:18:36.763 回答
3
这应该适合你:
require 'find'
file_name = /log\Z/
path = './'
found_files = Find.find(path).inject([]) do |files, entry|
File.file?(entry) && File.basename(entry) =~ file_name ?
files << entry : files
end
p found_files
#=> ["./Maildir/dovecot.index.log", "./pgadmin.log"]
改变file_name
和path
你的需要。
于 2012-11-29T16:03:51.307 回答