file::checktree(3)

NAME

validate - 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?0
});

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 inter
preted 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 read
ability. 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

Unknown. 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 ver
sion of File::CheckTree was 4.2.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout