in reply to How would you go about it?
Just a couple of minor points on your usagedie function. First, exit(1) is more correct, since the command has failed due to incorrect user input. Second, using a here document is more enjoyable than one print statement after another, in my experience. For example:
sub usagedie { print <<'END_USAGE'; Usage: setperm.pl [-v] [-f perm] [-d perm] [Directory] -v, --verbose\t show files changed by script -f, --filemode\t octal mode to change files to -d, --dirmode\t octal mode to change directories to END_USAGE exit(1); }
Perl's here documents are like shell's, but much more powerful; they are a general quoting mechanism. You can even do things like this:
SomeFunction(<<'PARAM1', 42, <<"PARAM3"); this is the text for param1 PARAM1 and this is the text for param3 with $i variable interpolation this time PARAM3
See perlop for more information on Perl here documents.
|
|---|