$rule=File::Find::Object::Rule->new(); $rule->Some_filter_method_read_library_examples(parameters)->eventually_next_filter(); $rule->start(path_or_array_of_paths); #here will be initialized iterator. don't panic, it will not load all big directory structure while (){ my $item=$rule->match(); #read one single item. I prefer do it here, it prevents matching name as while loop break last unless defined $item; #stop looping after last element #here do anything with $item, it is path, example: printf "Fetched [%s]\n",$item; if (-l $item) {print "it is symbolic link\n"}; };