ディレクトリ内のファイルを再帰的に処理。

第1版とあまり内容は変わっていないらしい、衝動的に買ってしまったRubyレシピブックの第2版が届いた。
パラパラと眺めていて目に止まったのが以下の処理。

require 'find'

Find.find(File.expand_path('~/')) do |path|
  next unless File.directory?(path)
  puts path
end

指定されたディレクトリ内の全ファイルを再帰的に処理している。
この手の処理は今まで、何度も自分でチマチマと書いていたので何か悔しい。
これから、何か書くときはレシピブックを眺めてからにしよう。


Rubyレシピブック 第2版 268の技

Rubyレシピブック 第2版 268の技