2
我想获取特定目录下所有文件的列表。 Dir.glob的效果很好,但似乎没有办法将结果限制为文件(不包括目录)。找。 -type f in ruby
继承人就是我现在所拥有的:
files = Dir.glob('my_dir/**/*').reject { |f| File.directory?(f) }
有没有做到这一点更优雅的方式?
我想获取特定目录下所有文件的列表。 Dir.glob的效果很好,但似乎没有办法将结果限制为文件(不包括目录)。找。 -type f in ruby
继承人就是我现在所拥有的:
files = Dir.glob('my_dir/**/*').reject { |f| File.directory?(f) }
有没有做到这一点更优雅的方式?
这实际上是去这样做是一个相当有效的方式,但你也可能使用查找模块:
require 'find'
found = [ ]
Find.find(base_path) do |path|
found << path if (File.file?(path))
end
+1:我总是忘了'find'库,但它是最实在有效的(就程序员而言,无论如何)将POSIX'find'表达式移植到Ruby。 – 2009-12-30 18:02:32