Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > findライブラリ > Findモジュール > find
find(*dirs, ignore_error: true) -> Enumerator
[permalink][rdoc]find(*dirs, ignore_error: true) {|file| ... } -> nil
find(1) のように dir 配下のすべてのファイルや ディレクトリを一つずつ引数 file に渡してブロックを実行します。
ディレクトリのシンボリックリンクは辿りません。 また file に渡される順序は不定です。
ブロックを省略した場合は、上記の処理を行うような Enumerator を返 します。
例:
require 'find' Find.find('/tmp') {|f| Find.prune if f == "/tmp/bar" ... }
あるディレクトリ配下の探索を省略したい場合は上記のように、 Find.#prune を使用します。この例では "/tmp/bar" 配下のファイルやディレクトリを探索しません。prune の代わりに 制御構造/next を使用した場合、"/tmp/bar" 自体をスキップする だけで、その配下の探索は続行されます。
[SEE_ALSO] find(1), Find.#prune