6.5. Przetwarzanie zawartości katalogu

Problem

Należy wykonać pewną operację dla każdego z plików i podkatalogów zawartych w danym katalogu.

Rozwiązanie

Znając nazwę wspomnianego katalogu, można uzyskać listę (tablicę) jego elementów za pomocą metody Dir.entries bądź też przeprowadzić iterowanie po tych elementach za pomocą metody Dir.foreach.

# Metoda create_tree opisana jest we wstępie do niniejszego rozdziału require 'create_tree' create_tree 'mydir' => [ {'podkatalog' => [['plik_w_podkatalogu', 'Taki sobie plik.']] }, '.plik_ukryty', 'ruby_script.rb', 'plik_tekstowy' ] Dir.entries('mydir') # => [".", "..", ".plik_ukryty", "ruby_script.rb", "podkatalog", # "plik_tekstowy"] Dir.foreach('mydir') { |x| puts x if x != "." && x != ".."} ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.