The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

File::Find::Rule - Alternative interface to File::Find

SYNOPSIS

  use File::Find::Rule;
  # find all the subdirectories of a given directory
  my @subdirs = File::Find::Rule->directory->in( $directory );

  # find all the .pm files in @INC
  my @files = File::Find::Rule->file()
                              ->name( '*.pm' )
                              ->in( @INC );

  # as above, but without method chaining
  my $rule =  File::Find::Rule->new;
  $rule->file;
  $rule->name( '*.pm' );
  my @files = $rule->in( @INC );

DEPENDENCIES

This module has external dependencies on the following modules:

 Cwd
 File::Find
 File::Spec
 Number::Compare
 Test::More
 Text::Glob

INSTALLATION

 perl Build.PL
 perl Build test

and if all goes well

 perl Build install

HISTORY

What changed over the last 3 revisions

0.24_01 Saturday 4th October, 2003
        when you specify an extra of C<{ follow => 1 }> File::Find stops
        populating $File::Find::topdir.  This leads to warnings noise so
        instead we now track $topdir ourselves.
0.23 Friday 3rd October, 2003
        make the extras hash work and add a proper test for it. (Doh!)
0.22 Friday 3rd October, 2003
        add in ->extras hash for passing things through to File::Find::find

AUTHOR

Richard Clamp <richardc@unixbeard.net> with input gained from this use.perl discussion: http://use.perl.org/~richardc/journal/6467

Additional proofreading and input provided by Kake, Greg McCarroll, and Andy Lester andy@petdance.com.

COPYRIGHT

Copyright (C) 2002,2003 Richard Clamp. All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

File::Find, Text::Glob, Number::Compare, find(1)

If you want to know about the procedural interface, see File::Find::Rule::Procedural, and if you have an idea for a neat extension File::Find::Rule::Extending