如何在指定目录中仅返回文件列表,而不是目录?
我有 my_list = Dir.glob(script_path.join("*"))
这将返回目录中的所有内容,包括子目录.我搜索但未能找到答案.
the*_*eIV 27
除了Mark的回答,Dir.entries还会给回目录.如果您只是想要文件,可以使用测试每个条目以查看它是文件还是目录file?.
Dir.entries('/home/theiv').select { |f| File.file?(f) }
Run Code Online (Sandbox Code Playgroud)
替换/home/theiv为您要查找文件的目录.
另外,看看文件.它提供了一系列可以检索文件的测试和属性.
我认为参赛作品不会进行递归.如果您希望子目录中的文件也使用
puts Dir['**/*'].select { |f| File.file?(f) }
Run Code Online (Sandbox Code Playgroud)
Mar*_*off -4
听起来您正在寻找Dir.entries:
\n\n\n返回一个包含给定目录中所有文件名的数组。如果指定目录不存在,将引发 SystemCallError。
\n
如果在 Google 上搜索如何解决此问题没有找到任何结果,您可以查看 Ruby 文档。
\n