validate - run many filetest checks on a tree
use File::CheckTree;
$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" });
The
validate()
routine takes a
single multiline string consisting of lines 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.
If rather than formatting bugs, you encounter substantive content errors in these documents, such as mistakes in the explanations or code, please use the perlbug utility included with the Perl distribution.