in reply to Searching my network

On Linux I would use the "locate" command for this.

I believe that you will get this as part of Cygwin.

A lot of people are going to recommend File::Find. What it provides is a way to program the same brute-force search that you already found too slow. If you want to roll your own, this is not going to be very fast. However if you have a regular program run, search your drive, and save it as a simple text file that you grep, you will find a massive speed increase. You can get much better speed increases by using well-structured indexing, tying hashs to a dbm, etc, but simple text is a much easier place to start and is probably fast enough.

Even if you don't have grep, rolling your own is easy:

perl -ne "print if /hello/i" *.txt
(On Linux switch the type of quote.)

Or take a look at the PPT project.

EDIT
I realized that my comment about File::Find may confuse. What I meant is that you don't want to run it interactively. However you may want to run it every day or so, then interactively read its output. (This is how the locate tool I mentioned above works.)