File::CheckTree3perl
Run many filetest checks on a tree
Usage
use File::CheckTree;$num_warnings = validate( q{/vmunix -e || die/boot -e || die/bin cdcsh -excsh !-ugsh -exsh !-ug/usr -d || warn "What happened to $file?\n"});
Overview
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.
Releases
6 releases since Debian 3.0 (Woody); the text changed 5 times.