


File::CheckTree(3Perl Programmers Reference GuFile::CheckTree(3p)


NAME
       File::CheckTree - run many filetest checks on a tree

SYNOPSIS
           use File::CheckTree;

           $num_warnings = validate( q{
               /vmunix                 -e || die
               /boot                   -e || die
               /bin                    cd
                   csh                 -ex
                   csh                 !-ug
                   sh                  -ex
                   sh                  !-ug
               /usr                    -d || warn "What happened to $file?\n"
           });

DESCRIPTION
       The validate() routine takes a single multiline string
       consisting of directives, each containing a filename plus
       a file test to try on it.  (The file test may also be a
       "cd", causing subsequent relative filenames to be
       interpreted relative to that directory.)  After the file
       test you may put "|| die" to make it a fatal error if the
       file test fails.  The default is "|| warn".  The file test
       may optionally have a "!' prepended to test for the
       opposite condition.  If you do a cd and then list some
       relative filenames, you may want to indent them slightly
       for readability.  If you supply your own die() or warn()
       message, you can use $file to interpolate the filename.

       Filetests may be bunched:  "-rwx" tests for all of "-r",
       "-w", and "-x".  Only the first failed test of the bunch
       will produce a warning.

       The routine returns the number of warnings issued.

AUTHOR
       File::CheckTree was derived from lib/validate.pl which was
       written by Larry Wall.  Revised by Paul Grassie
       <grassie@perl.com> in 2002.

HISTORY
       File::CheckTree used to not display fatal error messages.
       It used to count only those warnings produced by a generic
       "|| warn" (and not those in which the user supplied the
       message).  In addition, the validate() routine would leave
       the user program in whatever directory was last entered
       through the use of "cd" directives.  These bugs were fixed
       during the development of perl 5.8.  The first fixed
       version of File::CheckTree was 4.2.






perl v5.10.1                2009-10-12                          1


