sub wanted { print OUT "$File::Find::dir/"; print OUT "$_\n"; }
Why are you adding a slash after the slash? According to the documentation:
$File::Find::dir = /some/path/ $_ = foo.ext $File::Find::name = /some/path/foo.ext

Other than for expository reasons, I would expect to see:

print OUT "$File::Find::name";
instead of mucking with leaning toothpicks.

###selection criteria is a set of easy Regular Expressions: foreach my $file1(@file1only) { unless (($file1 =~ "tmp") or ($file1=~"temp") or ($file1 =~ "recyc +ler") or ($file1 =~ "history")) { print OUT $file1; } }
I would reformat this to see the parallels:
###selection criteria is a set of easy Regular Expressions: foreach my $file1(@file1only) { unless (($file1 =~ "tmp") or ($file1 =~ "temp") or ($file1 =~ "recycler") or ($file1 =~ "history")) { print OUT $file1; } }
And I would probably lose the lc in favor of m//i. Which, by the way, you can't say "temp"i, you have to use m"temp"i.

I'm pretty sure no one uses m// anymore unless they're avoiding toothpicks (m{/lib/dir}), or obfu-ing (m atempa).

Now, are you sure you want "temp"? Because that will match "lastemployee"also. Perhaps you need "^temp$" or "\btemp\b"?

print OUT "LOWERCASING ALL FILE AND PATHNAMES BEFORE COMPARING.\n"; print "\n\n";
Do you need the OUT filehandle on that last print?

print OUT "IGNORING FILES WITH Tmp OR Temp IN PATHNAME.\n";
I would put something around the file names, to set them off. Perhaps 'Tmp' and 'Temp' instead?

And are you comparing with the directory path, or the file path? Maybe the regex should be

$file1 =~ /\btemp\W\w)/; # temp is not the filename
Or maybe you want to rethink the output of InventoryReport.pl so that the filename is easy to split from the dir name, and then dotted together for the final output?

-QM
--
Quantum Mechanics: The dreams stuff is made of


In reply to Re: Code review for magazine article? by QM
in thread Code review for magazine article? by McMahon

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.