[Ruby] Re: [Ruby] Re[2]: [Ruby] Обход директорий и вытаскивание из них полных путей файлов

SoNaR sonar at scli.ru
Wed Jun 11 13:04:38 MSD 2003


Hello SoNaR,

Wednesday, June 11, 2003, 12:58:29 PM, you wrote:

S> Hello Sergei,

S> Wednesday, June 11, 2003, 12:38:13 PM, you wrote:

SO>> SoNaR wrote:

>>>Hello ruby,
>>>
>>>  Есть директория с множеством поддиректорий. Как красиво осуществить
>>>  обход по дереву каталогов и на выходе иметь массив с полными именами
>>>  файлов.
>>>
>>>  
>>>
SO>> 1. man find
SO>> 2. popen("find ...")

S> А если в винде и не прибегая к помощи внешних утилит? Только
S> средствами Ruby?

Пока ждал ответа уже сам написал... Не знаю насколько это красиво, но
памяти жрет будь здоров.
BASE = "z:/DATABASES/Kodweb/update2old"

def findFiles( base = BASE)
        result1 = Array.new
        Dir.new( base ).each{ |dof| result1 << (base + "/" + dof) if (dof != ".")and(dof != "..") }
        result2 = Array.new
        result1.each{ |dof| 
                if File.stat(dof).directory?
                        result2 << findFiles( dof )
                else
                        result2 << dof
                end
        }
        return result2
end

p findFiles.flatten

-- 
Best regards,
 SoNaR                            mailto:sonar at scli.ru




More information about the Ruby mailing list