仅搜索某个级别的文件夹(仅限 3 个子目录)

Search for a folder only for a certain level (3 sub directories only)

目前我正在使用以下代码在路径中搜索“.svn”文件夹:

require 'find'
svn_folders = []
@folder_path = 'C:\my_repositories\'
Find.find(@folder_path) do |path|
  svn_folders << path if path =~ /.*\.svn$/
end

上面的代码将搜索 @folder_path 中的所有文件夹并列出我的 svn_folders 路径。

但是,最大的问题是这些文件夹很大 (50GB +),因此搜索“.svn”文件夹需要花费大量时间。

问题:是否可以只搜索特定级别的子文件夹,在我的例子中是 3 个子文件夹?

示例: 如果我的文件夹路径是 C:\my_repositories

我想向下搜索 3 层(子文件夹),即直到 C:\my_repositories\project_name\repository_name\repository

并且不想在名为 repository 的文件夹下搜索。

任何建议都会很有帮助。非常感谢你提前。

不就是

Dir.glob("*/*/*/.svn")